Categorias
Aplicativo Governo Segurança Pública UFC

Desenvolvido pela SSPDS em parceria com o Insight, aplicativo ajuda policiais penais em situação de risco

O Insight Lab, mais uma vez, colabora para o benefício da sociedade, com seu trabalho, por meio de parcerias na criação de tecnologias para a segurança pública. Desta vez, o aplicativo Portal Comando Avançado auxiliará na proteção de agentes públicos que trabalham em presídios e penitenciárias do Ceará. Com o botão de pânico, será possível aos agentes emitirem mensagem de alerta em situações de perigo.

Como funciona o App

Para emitir o alerta de perigo em situação de risco, o policial penal, bastará acionar o botão de alerta no aplicativo que emitirá um aviso à Coordenadoria Integrada de Operações (CIOPS). Esta, por sua vez, entrará em contato direto com o agente. Caso não haja resposta do emissor do alerta ou se comprove a situação de perigo, uma viatura policial será direcionada ao local do chamado de imediato.

O app, Portal Comando Avançado, já vem sendo utilizado por agentes da Secretaria de Segurança Pública do estado com funções de pesquisa e checagem de informações de veículos, documentos, consulta criminal e civil de suspeitos.

Parceria com a universidade

A tecnologia é fruto de uma parceria entre a Universidade Federal do Ceará (UFC), através do Insight Lab, coordenado pelo professor José Macedo e a Secretaria da Segurança Pública e Defesa social (SSPDS), que tem à frente o secretário André Costa.

Palavra dos especialistas

Mauro Albuquerque – SAP

O secretário da Secretaria da Administração Penitenciária (SAP), Mauro Albuquerque, destaca mais esse movimento em prol da proteção aos agentes. “Esse emprego da tecnologia e essa parceria com a Secretaria de Segurança é fundamental. Nós aprimoramos o trabalho, a segurança do Agente e o combate ao crime. Você ter uma informação rápida, um socorro rápido, é crucial para o combate ao crime. O crime está cada vez mais articulado. É fundamental para que nós possamos servir um serviço de qualidade e proteger nossos profissionais”, ressalta Mauro.

André Costa- SSPDS

O secretário da SSPDS, André Costa, destaca mais uma parceria de sucesso com a SAP. “Nós já temos integração de várias bases de dados e agora mais essa parceria. É um conjunto de ações buscando a proteção dos nossos agentes e no comando das pastas para proteger e zelar e quem ganha isso é a sociedade.”

José Macedo – UFC

O coordenador do Insight Lab da Universidade Federal do Ceará, José Macêdo, responsável por comandar a equipe, explica sobre a criação do aplicativo. “Eles (SSPDS) colocaram a necessidade e em três meses nós desenvolvemos a ferramenta. É bem utilizável, intuitiva e facilitada para os servidores da Segurança. Com a nossa equipe que envolve pesquisadores, desenvolvedores, alunos de Pós-Graduação, Mestrado, Doutorado e Docentes nós também damos o suporte quando necessário. A equipe de Tecnologia da Informação da SSPDS é apta a realizar todas as atualizações necessária, como acontece agora da utilização para os policiais penais”, afirma Macedo.

 

Fonte: ceara.gov.br

Categorias
Ciência de Dados Dica de Leitura Inteligência Artificial Machine Learning

10 livros para todo Cientista de Dados ler na quarentena

Se durante a sua vida profissional ou acadêmica, o grande problema foi encontrar tempo para ler, hoje, a realidade é outra. Pensando nisso o Insight Lab resolveu te dar uma ajudinha com dicas de leitura para você se aprimorar. Incluímos na lista obras técnicas e literárias que te trarão um conteúdo valioso e produtivo para sua carreira. Confira a lista.

 

1 – Python para Análise de Dados de Wes Mckinney.

Do mesmo criador da biblioteca Pandas, este volume é um guia para quem está no início da formação como programador. Ele ajuda a entender o funcionamento e a combinação de ferramentas para o tratamento de dados dentro do ambiente Python.

A obra é desenvolvida em seções curtas, o que torna a informação mais focada, isso ajudará o programador iniciante a identificar claramente os pontos centrais sem entrar em expansões ainda difíceis de entender.

 

 

 

2 – Data Science do Zero: Primeiras Regras com o Python  de Joel Grus

Neste livro você aprenderá, a partir do zero, como os algoritmos e as ferramentas mais essenciais de data science funcionam. Entenderá a desempenhar bibliotecas, estruturas, módulos e stacks do data science  ao mesmo tempo que se aprofunda no tema sem precisar, necessariamente, entender de data science.

 

 

 

 

 

3 – Storytelling com Dados de Cole Nussbaumer Knaflic.

O livro reflete sobre o que significa a organização dos dados em gráficos, a quem essas informações visuais serão 

apresentadas, e dentro de qual contexto. Para a autora a visualização dos dados é o ponto onde as informações devem estar mais sistematizadas, não podendo se tornar um enigma para quem observa.

Ao longo dos capítulos o livro nos mostra processos de concepção dos elementos para a visualização de dados e traz muitos exemplos de antes e depois, ou seja, exemplos de gráficos que não transmitem corretamente a mensagem e, em seguida, uma versão alternativa onde a informação foi apresentada de forma clara e eficiente.

 

 

4 – Mãos à Obra: Aprendizado de Máquina com Scikit-Learn & TensorFlow de Aurélien Géron.

Um dos melhores livros prático sobre Machine Learning. Seja para iniciante na área ou para quem já atua e precisa de um complemento.

De maneira prática, o livro mostra como utilizar ferramentas simples e eficientes para implementar programas capazes de aprender com dados. Utilizando exemplos concretos, uma teoria mínima e duas estruturas Python, prontas para produção, o autor ajuda você a adquirir uma compreensão intuitiva dos conceitos e ferramentas na construção de sistemas inteligentes.

 

 

 

5 – Learning Geospatial Analysis with Python de Joel Lawhead

Direcionado principalmente para desenvolvedores, pesquisadores e analistas de Python que desejam executar análises geoespaciais, de modelagem e GIS com o Python.

O livro é uma ótima dica para quem deseja entender o mapeamento e a análise digital e quem usa Python ou outra linguagem de script para automação ou processamento de dados manualmente.

 

 

 

 

6 – Learning Scala Programming de Vikas Sharma

O livro foi feito para programadores que desejam se familiarizar com a Linguagem de Programação Scala para escrever programas concorrentes, escaláveis ​​e reativos. Não é preciso ter experiência em programação para entender os conceitos explicados no livro. Porém, caso tenha, isso o ajudará a aprender melhor os conceitos.

O autor começa analisando os conceitos básicos da linguagem, sintaxe, tipos de dados principais, literais, variáveis ​​e muito mais. A partir daí, o leitor será apresentado às suas estruturas de dados e aprenderá como trabalhar com funções de alta ordem.

 

7 – The man who solved the market: how Jim Simons Launched the quant revolution de Gregory Zuckerman

Em tradução livre – O homem que resolveu o mercado: como Jim Simons lançou a Revolução Quant. Um livro não técnico, conta a história de Jim Simons, um matemático que começou a usar estatísticas para negociar ações, em uma época em que todo mundo no mercado usava apenas instintos e análises fundamentais tradicionais. 

Obviamente, todo mundo ficou cético em relação a seus métodos, mas depois de anos gerenciando seu fundo de investimentos e obtendo resultados surpreendentes, as pessoas acabaram cedendo e começaram a reconhecer o poder dos chamados quant hedge funds, que desempenham um papel enorme no setor financeiro nos dias atuais.

 

 

8 – Feature Engineering for Machine Learning de Alice Zheng e Amanda Casari

Embora a Engenharia de Recursos seja uma das etapas mais importantes no fluxo de trabalho da Ciência de Dados, às vezes ela é ignorada. Este livro é uma boa visão geral desse processo, incluindo técnicas detalhadas, advertências e aplicações práticas. 

Ele vem com a explicação matemática e o código Python para a maioria dos métodos, portanto, você precisa de um conhecimento técnico razoável para seguir adiante.

 

 

 

 

9 – The book of why de Judea Pearl e Dana Mackenzie

Muitas vezes nos dizem que “a correlação não implica causalidade”. Quando você pensa sobre isso, no entanto, o conceito de causalidade não é muito claro: o que exatamente isso significa?

Este livro conta a história de como vemos a causalidade de uma perspectiva filosófica e, em seguida, apresenta as ferramentas e modelos matemáticos para entendê-la. Isso mudará a maneira como você pensa sobre causa e efeito.

 

 

 

10 – Moneyball de Michael Lewis

Esta é a história de Billy Beane e Paul DePodesta, que foram capazes de levar o Oakland Athletics, um pequeno time de beisebol, através de uma excelente campanha na Major League Baseball, escolhendo jogadores negligenciados baratos.

 

Como eles fizeram isso? Usando dados. Isso mudou a maneira como as equipes escolhem seus jogadores, o que anteriormente era feito exclusivamente por olheiros e seus instintos. A história também inspirou um filme com o mesmo nome, e ambos são obras-primas.

 

 

Fonte: crb8.org.br

 

O que achou das dicas? Que mais livros você incluiria? Compartilha com a gente!

Categorias
Aplicativo Big Data Inteligência Artificial Segurança

Criado pelo Insight Lab, aplicativo Sinesp Agente de Campo é lançado pelo Ministério da Justiça

O Insight Lab, através do squad de produtos e dados, desenvolveu para o Ministério da Justiça e Segurança Pública (MJSP) por meio da Secretaria Nacional de Segurança Pública (Senasp), o aplicativo Sinesp Agente de Campo, lançado na segunda-feira, 25/05, inicialmente em teste beta com 250 policiais dos estados do Acre, Pará e Tocantins.

Apoio a policiais

Direcionado para os agentes de segurança pública, a ferramenta pretende dar maior celeridade ao trabalho policial nas ruas, disponibilizando acesso imediato a informações como mandados de prisão de todo o país, pessoas e objetos envolvidos em boletins de ocorrência e busca nacional de veículos. No caso dos veículos, é possível  realizar consultas detalhadas através de informações como placa, RENAVAM, chassi, motor e proprietário. Além disso, os agentes possuirão acesso a alertas atualizados sobre roubos e furtos.

Fase de implementação

No período de implementação o aplicativo será utilizado por policiais selecionados pelos estados que poderão reportar, pelo próprio aplicativo, eventuais ajustes que considerem relevantes. O Insight Lab continua o trabalho de aprimoramento da ferramenta, para que em breve, novas funções estejam disponíveis, A expectativa é que após a fase de teste, que vai até junho, o serviço seja estendido para todo o país. Na segunda fase, os policiais serão cadastrados pelos respectivos estados. 

De acordo com o diretor de Gestão e Integração da Informação da Senasp/MJSP, Wellington Silva, a ferramenta agiliza o trabalho de quem está em campo: “O aplicativo permite que o policial que está na ponta receba informações em tempo real. É um grande ganho de agilidade e rapidez no atendimento à população, na oferta de serviços públicos efetivos de segurança e na elucidação de crimes, melhorando o tempo de resposta da polícia”. 

Projeto Big Data

O aplicativo Sinesp Agente de Campo é fruto de um projeto maior, intitulado “Sinesp Big Data e Inteligência Artificial”, o qual é coordenado e executado pelo Insight Lab. Este projeto visa desenvolver métodos e técnicas inovadoras em Ciência de Dados e Inteligência Artificial com objetivo de contribuir com a segurança pública nacional. No mês de abril, o MJSP também havia lançado novas atualizações do aplicativo Sinesp Cidadão, igualmente desenvolvido pelo Insight Lab e com um diferencial de ser voltado para os cidadãos no apoio às questões de segurança pública.

 

Fonte: Ministério da Justiça e Segurança Pública (MSJP)

Categorias
Ciência de Dados Programação Scala

Dica de leitura: Learning Scala Programming

Para quem está de quarenta, todo dia é um ótimo dia de leitura.

Então, se você já tem uma lista de livros para ler neste período, anota mais um!

O livro Learning Scala Programming de Vikas Sharma, foi feito para programadores que desejam se familiarizar com a Linguagem de Programação Scala para escrever programas concorrentes, escaláveis ​​e reativos. Não é preciso ter experiência em programação para entender os conceitos explicados no livro. Porém, caso tenha, isso o ajudará a aprender melhor os conceitos.

SAIBA MAIS

Scala é uma linguagem de programação de uso geral que suporta paradigmas de programação funcional e orientada a objetos. Devido ao seu design e versatilidade, as aplicações em Scala foram estendidas a uma ampla variedade de campos, como Ciência de Dados e Computação Distribuída.

Apesar de ser uma linguagem baseada na JVM (Java Virtual Machine) de uso geral, como Java, Scala fornece uma vantagem com as primitivas funcionais. Scala também possui um sistema de tipagem rico, o que o torna mais expressivo. Usando sistemas de tipagens, os desenvolvedores podem escrever aplicações menos propensas a erros em tempo de execução.

O LIVRO

O autor começa analisando os conceitos básicos da linguagem, sintaxe, tipos de dados principais, literais, variáveis ​​e muito mais. A partir daí, o leitor será apresentado às suas estruturas de dados e aprenderá como trabalhar com funções de alta ordem. 

Além disso, o livro apresenta conceitos como pattern matching, case classes e recursos de programação funcional. Em seguida, você aprenderá como trabalhar com os recursos de orientação a objetos em Scala e sobre programação assíncrona e reativa, onde será apresentado ao framework Akka. Há ainda o aprendizado sobre a interoperabilidade do Scala e Java.

Com tudo isso, este livro fornece todos os elementos essenciais necessários para escrever programas usando Scala. Ele tem todos os blocos de construção básicos que alguém novo em Scala pode querer saber sobre ele, além dos motivos para usá-lo. Um dos principais objetivos deste livro é permitir que você escolha uma construção específica acima de outra.

O AUTOR

Vikas Sharma é desenvolvedor de software e evangelista de tecnologia de código aberto. Ele tenta manter as coisas simples, o que o ajuda a escrever um código limpo e gerenciável. Ele investiu muito tempo aprendendo e implementando o código do Scala e é autor de cursos de vídeo de Scala. Sharma também trabalha como desenvolvedor no SAP Labs.

Depois de ler este livro, você estará familiarizado nesta linguagem de programação e em seus recursos e poderá escrever programas escaláveis, concorrentes e reativos em Scala.

Esta leitura será uma companheira em sua jornada de aprendizado e no desenvolvimento de aplicações em Scala.

 

Boa leitura!

 

 

Categorias
Destaque Inovação squad trabalho

Squads: Modelo que torna as organizações mais ágeis e produtivas

 

O mundo empresarial vive em constante transformação e avanço. Para acompanhar esse ritmo é preciso se atualizar e a inovação é item imprescindível para a continuidade das organizações. Os processos estão cada vez mais velozes e o desafio de manter a rentabilidade força as empresas a encontrarem maneiras de se adaptarem às novas realidades. E aí surge uma questão primordial: como estruturar sua empresa da melhor forma possível?

CONCEITO DE SQUAD

O Squad (esquadrão) é um modelo organizacional que estrutura a divisão das equipes empresariais em pequenos times multidisciplinares. Cada uma com a missão de solucionar desafios específicos de produtos. O Squad é composto por membros de diferentes funções, sincronizados e autônomos, em grupos pequenos e liderados por um colaborador individual, o líder.

O Squad (esquadrão) é um modelo organizacional que estrutura a divisão das equipes empresariais em pequenos times multidisciplinares. Cada uma com a missão de solucionar desafios específicos de produtos. O Squad é composto por membros de diferentes funções, sincronizados e autônomos, em grupos pequenos e liderados por um colaborador individual, o líder.

COMO SURGIU O MODELO DE SQUAD

Em 2014, o vídeo intitulado Spotify Engineering Culture ou Cultura de Engenharia do Spotify – serviço de distribuição de música pela internetdeu o pontapé inicial ao que popularmente ficou conhecido como “modelo Spotify Squads”.

Em sua formação inicial, o Spotify era uma pequena organização que utilizava o Scrum – estrutura de trabalho que busca auxiliar times a construírem e desenvolverem seus produtos em ambientes complexos. Com o crescimento da empresa e o aumento da equipe, percebeu-se que o modelo Scrum não se adequava mais tanto à empresa como antes. Então, concluíram que a metodologia Ágil – do Manifesto Ágil para Desenvolvimento de Software, assinado em 2001 em Utah, era mais importante do que um modelo específico. As metodologias ágeis, em geral, defendem o planejamento adaptativo, times auto-organizados e multidisciplinares, melhoria contínua e o desenvolvimento evolucionário.

A partir daí, o Spotify reformulou seu “Scrum Master” para “ Agile Coach”, que funcionaria como um líder-colaborador capaz de incentivar uma melhoria contínua. Depois dessa primeira mudança, as equipes passaram a ser chamadas de Squads.

 

MODELO SQUAD NO INSIGHT LAB

O Insight Lab implementou a metodologia Squad para dar mais rapidez aos seus trabalhos e uma maior autonomia aos seus membros. Liderado por um coordenador especialista em sua área, cada Squad possui a autonomia necessária para desenvolver um trabalho mais ágil e com ótimos resultados.

Cada esquadrão é coordenado por um líder, que tem o papel de facilitador. Apesar do título, o líder não está em uma posição superior ou inferior ao restante da sua equipe, sendo o seu papel tão importante quanto o de todos os outros membros do esquadrão.

A composição desses Squads, multidisciplinares, vai desde profissionais especializados a estudantes de graduação, passando por pesquisadores nacionais e internacionais. Com um grupo misto, cada membro tem a oportunidade de conhecer mais sobre as outras funções e construir um aprendizado colaborativo.

 

IMPACTOS DA IMPLEMENTAÇÃO DO MODELO SQUAD

Agilidade e produtividade

Com uma equipe mais enxuta, os squads conseguem agilizar os processos por exigir menos burocracia e menos necessidade de reuniões. No modelo de equipe tradicional existe a necessidade de uma relação entre setores no processo, enquanto no Squad toda a comunicação acontece, unicamente, dentro da equipe. Não há a dificuldade de organizar horários e prazos com um número maior de pessoas.

 

Motivação pelo sucesso do projeto

Com o nivelamento das responsabilidades, o grupo passa a desenvolver um sentimento de coletividade mais apurado, e a motivação é consequência diante do reconhecimento também mais democrático entre os membros quando o sucesso acontece.

 

Colaboração além das funções 

Nos Squads, uma grande vantagem é a contribuição de todos os membros durante os processos, de diversas maneiras, independente da sua especialização. Isso enriquece ainda mais a construção do produto que recebe visões diferentes de cada pessoa.

A colaboração também acontece na parceria em dividir os trabalhos, ou mais ainda, na ajuda a um colega na realização de uma tarefa para que a execução dos trabalhos não seja comprometida. Dentro de um Squad o sucesso é de todos. 

 

E você, também faz parte de um Squad?

Que modelo organizacional é usado no seu trabalho?

 

Fontes: 

TecnoSpeed e Target Teal

 

Categorias
App Governo Inteligência Artificial Tecnologia

Insight participa do Webinar – Governo Digital e a Tecnologia de Chatbots

A popular tecnologia que simula a fala humana – o Chatbot – e é capaz de conversar com as pessoas através de redes sociais como o Telegram, será tema de mais um webinar promovido em tempos de pandemia. Evento promovido pelo Íris, Laboratório de Inovação e Dados do Governo do Estado Ceará, em parceria com o Insight. 

Essa tecnologia tem como uma das principais funções vender produtos e informar os usuários sobre determinados serviços, entre outros. Muito usado por empresas para atender clientes e orientá-los com informações, os Chatbots são robôs (bots) que interagem por chat – em canais como o WhatsApp e o Facebook Messenger por exemplo -, usando Inteligência Artificial e se aperfeiçoando cada vez mais no atendimento ao usuário. É muito provável que você já tenha conversado com um, ao atender a ligação ou responder uma mensagem de texto de uma empresa.

Chatbots a serviço da saúde

Mas não são apenas as empresas que utilizam essa tecnologia para melhorar os serviços oferecidos: o setor público também tem bons exemplos de uso de chatbots. Um deles é o caso do governo do estado do Ceará, que tem utilizado esse recurso para orientar a população sobre a Covid-19. O atendimento virtual do Plantão Coronavírus detecta casos suspeitos, oferece orientação especializada com profissionais de saúde e informa sobre medidas de enfrentamento da pandemia. Através da ferramenta, o cidadão pode fazer uma autoavaliação, ter orientações médicas confiáveis, além de se informar com dicas sobre como enfrentar a pandemia. O chatbot faz uma triagem inicial, baseado nos sintomas informados pelo usuário, que poderá ser encaminhado ao atendimento humano especializado dependendo de suas respostas no chat.

A nível nacional e também na plataforma Telegram, o Ministério da Saúde disponibilizou o serviço de bot, Coronavírus – SUS, à população. Com o intuito de combater a doença, o aplicativo auxilia na resolução de dúvidas sobre sintomas e informações sobre unidades de saúde mais próximas.

O evento

Ficou interessado? Saiba mais sobre essa e outras aplicações de chatbots no webinar: Governo Digital e a Tecnologia de Chatbots! O evento contará com a presença do Coordenador geral do Insight Data Science Lab e cientista-chefe de dados do Governo do Ceará, José Macedo. Estarão presentes também nesta conversa; Eveline Braga,  coordenadora de gestão estratégica de TIC da Seplag-CE; Jessika Moreira, coordenadora geral do Íris e Leandro Neves, desenvolvedor e sócio-fundador da Ilhasoft. 

Abordagens que você pode esperar do evento: 

– Como o Governo Digital pode impactar a(o) cidadã(o)?

– Chatbots na comunicação com as(os) cidadãs(ãos)?

– Quais os benefícios e desafios dessa tecnologia?

– Quais iniciativas já existem no Setor Público?

– Casos do Governo Ceará: Plantão Coronavírus e Portal Único de Serviços.

Agende-se!

É dia 24 de abril, sexta-feira, das 16h às 17h30.

Inscreva-se aqui.

Serviços:

Whatsapp: (85) 8439-0647

Telesaúde 0800 275 1475

saude.ce.gov.br

coronavirus.ceara.gov.br

Em tempo

Webinar, da abreviação web-based seminar, é um tipo de webconferência no qual a comunicação é de uma única via, ou seja, o discurso é somente da pessoa que está palestrando. A interação entre os participantes é restringida ao chat, dessa forma eles podem conversar entre si e enviar perguntas ao palestrante.

 

 

Categorias
Big Data Ciência de Dados Python

Conheça o PyMove: biblioteca Python para identificação de trajetórias padrões, mineração e análise de dados

O Insight Lab é formado por um time multidisciplinar de pesquisadores que vão desde de alunos de graduação a especialistas. Com o propósito de  desenvolver pesquisas na área de Data Science, que possam beneficiar a outros pesquisadores e a sociedade em geral, nossos pesquisadores estão sempre atentos às necessidades que as mudanças e as novas tecnologias proporcionam. 

Observamos com isso, por exemplo, que o crescente uso de sensores GPS e barateamento de tecnologias móveis, nos últimos anos, têm gerado um grande volume de dados de trajetórias. Esses dados podem trazer respostas para facilitar diversas atividades que impactam diretamente na vida das pessoas. Pensando nisso, o quê um Cientista de Dados pode fazer a partir daí?

O que é uma trajetória?

Bem, antes de tudo é muito importante entendermos o que é uma trajetória. Uma trajetória é uma sequência de pontos cronologicamente ordenados, que representam o movimento de um objeto em um espaço geográfico. Cada ponto é formado por uma marcação de tempo e coordenadas geoespaciais (latitude,longitude). As trajetórias podem representar movimentos de diferentes objetos, como:pessoas, veículos e animais.

O que podemos fazer com os dados de trajetória?

Esse tipo de dado é muito valioso não só para a Computação, mas também para áreas como Geografia, Sociologia e Urbanização, sendo bastantes utilizados para aplicações como: sistemas de transporte inteligentes e computação urbana; análise de mobilidade sustentável; no rastreamento de fenômenos naturais e identificação de padrões de migração animal e etc.

Como trabalhar com esse dado?

Para que seja possível extrair informações dos dados e realizar análises consistentes dos mesmos, é preciso que um conjunto de atividades de mineração de dados, que veremos em mais detalhes a seguir, sejam executadas. Embora haja um grande volume de trabalhos e aplicações, nota-se a ausência de softwares e ferramentas que possam auxiliar pesquisadores em todo o processo para lidar e extrair as informações que esses dados possam oferecer.

Com isso, nós do Insight Data Science Lab estamos trabalhando para a elaboração de uma biblioteca open-source para Python que contemple o conjunto de etapas e atividades para lidar com esses dados: o PyMove!

O que é o PyMove?

O PyMove surgiu em meados de 2018 com o objetivo de ser uma biblioteca Python extensível que comporte um grande número de operações dentro das etapas de mineração de dados de trajetória!

O PyMove propõe :

  • Uma sintaxe familiar e semelhante ao Pandas;
  • Documentação clara;
  • Extensibilidade, já que você pode implementar sua estrutura de dados principal manipulando outras estruturas de dados, como o Dask DataFrame, matrizes numpy, etc., além de adicionar novos módulos;
  • Flexibilidade, pois o usuário pode alternar entre diferentes estruturas de dados;
  • Operações para pré-processamento de dados, mineração de padrões e visualização de dados.
Modelagem do Pymove
Estrutura de dados

A atual estrutura do PyMove é fortemente influenciada pelo trabalho de Yu Zheng, o qual propõe um paradigma que serve como um guia para realizar trabalhos de mineração de dados de trajetória. A figura 2.1.1 mostra a versão adaptada desse paradigma adotada no PyMove.

Figura 2.1.1. Um paradigma para mineração de trajetória. Fonte: Adaptado de [4]
A seguir, iremos destrinchar cada etapa citada na figura 2.1.1.
Pré-processamento

O pré-processamento de dados é uma etapa de extrema importância na mineração dos dados. Nela são realizadas atividades com o objetivo de melhorar a qualidade do dados para obtenção de melhores resultados em processamentos e análises futuras. Existem quatro técnicas básicas para esta etapa: filtragem de ruído, detecção de pontos de parada, compressão e segmentação de trajetória.

Filtragem de ruído

Alguns pontos da trajetória podem estar inconsistentes devido a problemas nos dispositivos de coleta de dados, na comunicação, ou em outros fatores externos, tais pontos são denominados ruídos. As técnicas de filtragem de ruído procuram realizar a remoção ou alinhamento desses dados ruidosos com a rede de ruas. Os pontos p5 e p9 na Figura 3.1 são, neste contexto, dados com ruído.

Figura 3.1. Trajetória com pontos lidos incorretamente. Fonte: adaptado de [1]
Detecção de pontos de parada

Pontos onde os objetos ficaram parados ou se movimentando ao redor, por um determinado limite de tempo, são chamados pontos de parada. Estes pontos podem representar: shoppings, atrações turísticas, postos de gasolina, restaurantes, entre outros. Os pontos de parada nos permitem representar uma trajetória como uma sequência de pontos com significado.
A figura 3.2 mostra uma trajetória, após a execução de um algoritmo, para detectar pontos de parada onde são encontrados três pontos de parada: casa, trabalho e supermercado. Esses pontos podem representar essa trajetória, como pontos p1, p2 e p3, respectivamente.

Compressão

Tem como objetivo reduzir o tamanho dos dados de trajetória através de um conjunto de técnicas, com o objetivo de evitar sobrecarga de processamento e minimizar a carga no armazenamento de dados, gerando uma representação mais compactada  que descreve a trajetória de um objeto.

Figura 3.2. Resultado da execução de um algoritmo de detecção de pontos de parada. Fonte: adaptado de [2].

Na Figura 3.3 podemos ver o resultado da compressão de uma trajetória, inicialmente ela é representada por doze pontos, mas após a compressão este número é reduzido para quatro pontos.

Figura 3.3. Demonstração da aplicação de uma técnica de compreensão de dados de trajetórias. Fonte: adaptado de [2].
Segmentação

Nesta etapa, a trajetória é subdividida em segmentos, de tal forma que os dados pertencentes ao mesmo segmento tenham comportamento homogêneo. A segmentação ajuda a descobrir padrões sobre os dados, diminui a complexidade computacional e é um passo obrigatório para processos de análise, como a clusterização e a classificação. A Figura 3.4 apresenta um exemplo de segmentação de trajetória pelo tempo fixo de duas horas, resultando em três novos segmentos.

Figura 3.4. Segmentação de uma trajetória com base no intervalo de tempo igual a duas horas. Fonte: adaptado de [2]
Map-matching

Como foi mencionado acima, os pontos gerados em uma trajetória podem não corresponder precisamente à real localização de onde o objeto em movimento passou, (figura 3.5-a).

Esta falta de precisão não é desejável para alguns tipos de aplicações, entre elas: as que trabalham com análise de fluxo de trânsito ou serviços de navegação (ZHENG,2015). Para resolver esses e outros problemas, são aplicados algoritmos de map-matching, que têm como objetivo alinhar os pontos da trajetória com a rede de ruas, (figura 3.5-b).

Figura 3.5 (a e b). Uma trajetória, antes e depois da aplicação do Map-matching. Fonte: adaptado de [1].
Indexação e recuperação de trajetórias

Durante o processo de mineração de dados de trajetórias, acabamos por precisar acessar frequentemente diferentes segmentos e amostras das trajetórias. Com o grande volume de dados, esses acessos podem demandar tempo e processamento. Por isso, é necessário a adoção de técnicas eficazes para o gerenciamento desses dados, oferecendo a recuperação rápida dos dados.

Os dois principais tipos de consultas, mostrado na Figura 2.1.1 – Um paradigma para mineração de trajetória.
  • KNN: esse tipo de consulta recupera as K, primeiras trajetórias com a distância agregada mínima, para alguns pontos ou uma trajetória específica.

Nas consultas de pontos buscamos por trajetórias que possuam uma boa conexão com os locais/pontos pesquisados, em vez de saber se a trajetória é semelhante à consulta em forma.

Nas consulta por trajetória buscamos encontrar os registros que possuam uma rota ou segmento de trajetória parecida. Essa consulta necessita da definição de uma função que delimite a similaridade e distância entre trajetórias.

  • Intervalo de consultas: recuperam os dados de trajetórias que estão contidos em um espaço ou intervalo. Essa técnica contém três abordagens para consultas de intervalo espaço-temporal.
  1. A primeira abordagem considera o tempo como a terceira dimensão além das informações que delimitam o espaço geográfico.
  2. A segunda abordagem divide um período em vários intervalos de tempo, criando um índice espacial individual.
  3. A terceira abordagem leva em consideração o espaço geográfico, dividindo-o em grades, as chamadas grids, e cria um índice temporal para as trajetórias que caem em cada célula dessa grade. Cada segmento que cai em uma grade é representado por um ponto com as coordenadas iguais ao ponto com horário inicial e o ponto com horário final do segmento.

A Figura 4 mostra as técnicas para melhoria da indexação e recuperação de dados e segmentos de trajetórias. Em (a) é mostrada a técnica de Intervalo de consulta. Nela são recuperados os pontos e segmentos de trajetórias dentro da região retangular tracejada em vermelho. Já em (b) e (c) são mostradas o uso da técnica de consulta via KNN, sendo a primeira consultas por pontos e a segunda consulta por segmentos de trajetórias similares.

Figura 4. Demonstração das abordagens utilizadas para indexação e recuperação de trajetórias. Fonte: adaptado de [4].
Modelos

Muitas aplicações exigem informações instantâneas a partir dos dados de trajetória, como é o caso de aplicações de guia de viagens ou detecção de anomalias de tráfego. Essas informações exigem algoritmos eficazes e muitas vezes são adquiridas por meio de técnicas de mineração de dados. Essas técnicas podem ser enquadradas em áreas, como classificação, detecção de anomalias, mineração de padrões e incertezas da trajetória. Abaixo é explorado o conceito de cada uma dessas técnicas.

Classificação

Trajetórias e segmentos podem ser classificados de diferentes modos e em diferentes categorias, como em: tipo de atividade, modos de transporte e até mesmo o movimento, através do uso de técnicas e algoritmos de aprendizado supervisionado.

Em geral, a classificação da trajetória é composta por três etapas principais:

  1. Utilização de métodos de segmentação da trajetória para prover segmentos;
  2. Extração de características de cada segmento;
  3. Criação de modelos para classificar cada segmento.
Detecção de anomalias

Anomalias, no contexto de dados espaço temporais, consistem em pontos ou até mesmo segmentos de uma trajetória que possuem um comportamento anormal. Não segue o padrão dos dados que representam uma trajetória, como é o caso dos pontos destacados em vermelho na Figura 3.1. Essas anomalias podem ser desencadeados por diversos eventos como: um acidente de trânsito, que obriga os carros a mudarem rapidamente de velocidade, um desvio de uma rota comum por conta de uma obra ou por estar perdido no caminho. A etapa de detecção de anomalias, se preocupa em encontrar esses pontos e/ou segmentos que violem um certo padrão de uma trajetória.

Mineração de padrões

Diferentes padrões de mobilidade podem ser identificados numa trajetória individual ou em um conjunto de trajetórias. Os padrões de mobilidade de trajetória em quatro categorias: Clusterização de trajetórias, Moving Together Patterns, , Padrões Periódicos e Padrões de Frequências Sequenciais.

  1. Clusterização: as técnicas dessa categoria têm como finalidade agrupar trajetórias em busca de algum padrão ou característica que diferenciem grupos.
  2. Moving Together Patterns: essa categoria reúne técnicas que procuram detectar indivíduos e/ou objetos que se movem juntos por determinado período de tempo, sendo bastante útil para detectar padrões. Esses padrões podem ter diversas aplicações, como ajudar a entender fenômenos de migração e tráfego de espécies.
  3. Padrões Periódicos: reúne técnicas que procuram identificar comportamentos e padrões temporais em trajetórias, como a ida a um dentista durante um intervalo de tempo, ou até mesmo os animais, que migram anualmente de um lugar a outro. A análise deste tipo de padrão auxilia na previsão de comportamentos futuros do objeto e na compressão de dados.
  4. Padrões de Frequências Sequenciais: reúne técnicas que possuem a finalidade de encontrar padrões onde objetos partilhem a mesma sequência de localização, num período similar de tempo. Os pontos da sequência não necessariamente precisam ser pontos consecutivos na trajetória original. Essas técnicas são amplamente utilizados em aplicações como recomendação de trajetória, predição de localização, compressão de dados.
Incerteza em trajetórias

Indivíduos e objetos realizam movimentos contínuos em determinados locais em que trafegam. Porém, devido à limitação de algumas aplicações ou por questão de economia de energia dos sensores, os dados que representam essa trajetória são enviados periodicamente. Desse modo, a localização desse indivíduo e/ou objeto será incerta, ou até mesmo desconhecida, entre dois pontos que descrevem sua trajetória.

Na Figura 6 é perceptível que entre dois pontos é possível tomar caminhos diferentes, por exemplo: partindo do ponto p1 é possível chegar ao ponto p2 de diferentes formas. Este contexto ocasiona a incerteza dos caminhos tomados entre pontos de uma trajetória.

Nessa linha de pesquisa, há duas sub-áreas, descritas a seguir:

  • Redução de incertezas: consiste em desenvolver técnicas que visam diminuir a incerteza da trajetória entre dois pontos.
  • Preservação de privacidade: consiste em desenvolver técnicas que visam ampliar a incerteza de trajetórias sem afetar a qualidade de um serviço ou o uso desses dados, visando proteger um usuário do vazamento de privacidade causado pela divulgação de suas trajetórias.
Figura 6. Demonstração de uma trajetória formada por três pontos, p1, p2 e p3. Fonte: adaptado de [4].
Visualização de trajetórias

A aplicação de técnicas de visualização de dados nos grandes volumes de dados de trajetórias podem facilitar a compreensão do comportamento de objetos em movimento, como veículos e descoberta de tráfego, social, geoespacial e até padrões econômicos. Essas visualizações podem ser combinadas com procedimentos de processamento dos dados, visando diminuir, limpar e filtrar os dados.

Para visualizar dados de trajetória são necessárias técnicas que exploram canais visuais como cor, tamanho, forma, orientação aplicadas a diferentes marcas como pontos, linhas, áreas, volumes e superfícies para representar estes dados, transformando-os em representações visuais apropriadas.

Há diferentes técnicas de visualização a serem aplicadas como:
  • Gráfico de Linhas: visualizações orientadas ao tempo enfatiza a exibição de padrões, periodicidade, tendências e anormalidade dos dados de trajetória. Nesse tipo de representação é amplamente utilizado gráfico de linhas, onde o eixo X delimita o tempo e o Y outra característica do dado, como os picos de velocidade de uma trajetória.
  • Mapa estáticos: são abordagens bastante comuns para representar informações de localização geográfica, como a análise de trajetórias de mobilidade ou fluxo de tráfego em uma rede distribuída. Convencionalmente, uma trajetória é representada por uma linha ou uma curva, podendo explorar combinações de variáveis, como cor, tamanho e direção, em relação às suas propriedades.
  • Clusters: Quando há uma grande massa de dados de trajetória, pode haver sobreposição de pontos em uma visualização. Com isso as visualizações com clusters em mapas ajudam bastante em análises, visto que um grupo de pontos que em determinado momento se sobrepunham, tornam-se um só. Essa técnica permite obter uma visão geral rápida de seus conjuntos de clusters.
Visualização dos dados de gorjetas das viagens de táxis fazendo uso do gráfico de linhas para demonstrar a quantidade de gorjetas obtidas pelas viagens de táxi no período de tempo de 1 a 7 de maio de 2011. Cada linha representa a gorjeta por viagem em uma região. Fonte: Wei Chen, Fangzhou Guo, and Fei-Yue Wang. A survey of traffic data visualization. IEEE Transactions on Intelligent Transportation Systems, 16:2970–2984, 12 2015.

 

Exploração do uso de recursos visuais para visualização em mapas estáticos. Fonte: adaptado de [3].
  • Mapas de Calor: Essa visualização é gerada a partir de uma matriz de células, onde cada célula é colorida de forma gradiente com base em valores ou função dos dados, sendo bastante útil quando é necessário gerar visualizações para grande volume de dados, fornecendo uma visão geral dos maiores e menores valores dos dados.

 

Visualização de todos os pontos sob um mapa gerado pelo Folium. Fonte: documentação Folium.

 

Utilização da técnica de cluster para visualizar os pontos sob um mapa gerado pelo Folium. Fonte: documentação Folium.
Tutorial

Depois de explorar mais sobre a arquitetura do PyMove e vislumbrar o mundo dos dados de trajetória, agora vamos botar a mão na massa!

Neste tutorial iremos entender como representar dados de trajetória no PyMove, aplicar funções de pré-processamento e visualização de dados existentes no PyMove!

Para isso, vamos utilizar o conjunto de dados utilizado neste trabalho, o Geolife GPS trajectory dataset, [5]. Ele é resultado da coleta realizada no projeto Geolife, da Microsoft Research Asia, por 178 usuários por mais de quatro anos. Esses dados registram uma grande variedade de movimentos de dos usuários, incluindo não só caminhos rotineiros, como também atividades esportivas e de lazer, amplamente distribuídos em mais de 30 cidades da China e em algumas cidades localizadas nos EUA e na Europa.

Esse conjunto de dados possui 17.621 trajetórias, registradas por GPS, com uma distância total de 1.251.654 quilômetros e duração de 48.203 horas. Os dados estão dispostos em 182 pastas, numeradas de 000 à 181, onde cada uma simbolizava um usuário. Os arquivos que contém os dados de localização possuem os valores separados por vírgula, onde representam, respectivamente, a latitude, longitude, campo sem valor, altitude, número de dias que passaram após a data 30/12/1999, data e tempo.

Por limitações de processamento e em busca de diversidade, nesse trabalho são utilizados os dados dos usuários 000, 010, 011 e 100, totalizando em 1.206.506 pontos de trajetórias.

Instalação do PyMove

Primeiro, vamos clonar o repositório!
COMANDO 1: git clone -b developer https://github.com/InsightLab/PyMove

Segundo, vamos criar um ambiente!
COMANDO 2: conda create -n pymove pip python=3.7

Terceiro, acesse o ambiente recém criado.
COMANDO 3: conda activate pymove

Quarto, vamos instalar as dependências da nossa biblioteca!
COMANDO 4: cd PyMove python setup.py install

Quinto, agora é só usar!
COMANDO 5: import pymove

 

Referências:

[1] G. A. M. Gomes, E. Santos, and C. A. Vidal. VISUALIZAÇÃO INTERATIVA DE DINÂMICAS DE TRÁFEGO ATRAVÉS DE DADOS DE TRAJETÓRIAS. PhD thesis, PD thesis, Universidade Federal do Ceará, 2018.

[2] G. A. M. Gomes, E. Santos, and C. A. Vidal. VISUALIZAÇÃO INTERATIVA DE DINÂMICAS DE TRÁFEGO ATRAVÉS DE DADOS DE TRAJETÓRIAS. PhD thesis, PD thesis, Universidade Federal do Cear´a, 2018.

[3] Tiago Gon¸calves, Ana Afonso, and Bruno Martins. Visualization techniques of trajectory data: Challenges and imitations. CEUR Workshop Proceedings, 1136, 01 2013.

[4] Yu Zheng. Trajectory data mining: An overview. ACM Transaction on Intelligent Systems and Technology, September 2015.

[5] Yu Zheng, Hao Fu, Xing Xie, Wei-Ying Ma, and Quannan Li. GeoLife User Guide 1.2. Microsoft Reasearch Asia, 2(April 2007):31–34, 2011

Categorias
Aplicativo Governo

Desenvolvido pelo Insight Lab, aplicativo Sinesp Cidadão tem novidades lançadas pelo Ministério da Justiça e Segurança Pública

Aplicativo Sinesp Cidadão, desenvolvido no Insight Lab, disponibilizou a partir de hoje (14) novas funções para cinco cidades brasileiras. O Ministério da Justiça e Segurança Pública (MJSP) dispôs de novas funcionalidades para o aplicativo de segurança que agora contará com os módulos Participação Cidadã e Procurados.

Novidades

Em procurados a novidade é o acesso à lista com nomes, fotos e informações sobre os criminosos mais procurados no Brasil. É possível denunciar um criminoso reconhecido ligando do próprio aplicativo para o 190. Em Participação Cidadã o aplicativo irá receber relatos de problemas do tipo: iluminação pública, pichações e irregularidades no descarte do lixo. Nesse módulo as pessoas poderão enviar fotos com uma descrição relatando o problema denunciado. Todas as informações serão repassadas aos órgãos competentes para possíveis soluções. 

Atualização das funções existentes

Além dos novos recursos, o Sinesp Cidadão teve suas funcionalidades existentes atualizadas. Agora a vítima tem a possibilidade de emitir alerta de roubo ou furto do seu veículo informando o local onde aconteceu o ocorrido. Antes, esse registro só era feito por autoridades.  

O alerta será enviado para a Secretaria de Segurança Pública corresponde a cada cidade. É importante ressaltar que o alerta estará disponível no sistema por 72 horas e que o cidadão deverá, mesmo após o registro no aplicativo, registrar um boletim de ocorrência. 

Outra atualização é a  inclusão de dados e fotos de pessoas desaparecidas. Para isso é necessário já ter registrado um boletim de ocorrência na polícia civil. 

Acesso ao Sinesp Cidadão e às novas funções

Apesar do aplicativo ter sido liberado gradualmente para download desde março, os módulos de Participação disponibilizadas hoje (14/02) serão, inicialmente, exclusivas para as cidade de Ananindeua (PA), Cariacica (ES), Paulista (PE), e São José dos Pinhais (PR). Essas cidades são beneficiadas pelo “Em Frente Brasil”, programa  do Ministério da Justiça, que foi criado para realizar o enfrentamento à criminalidade com ações conjuntas entre União, estados e municípios.

Nesses e nos demais municípios do país o Sinesp Cidadão pode ser baixado gratuitamente através das lojas de aplicativos  Apple Store e Google Play. Para utilizar o aplicativo, o usuário deverá fazer o download no seu celular e fazer login com a senha cadastrada no portal do Governo do federal que reúne todos os órgãos e programas federais na internet.

 

Fonte:

RODRIGUES, Alex. Aplicativo Sinesp Cidadão ganha novas funcionalidades. Agência Brasil. Acesso em: 14 abr. 2020.

 

Categorias
Vagas Vagas Encerradas

Edital para seleção de UX/UI Designer

Trago boas notícias!

O Insight acaba de lançar o edital para seleção de UX/UI Designer.
O selecionado irá trabalhar com o planejamento e elaboração das interfaces dos sistemas e experiência dos usuários. É necessário possuir conhecimentos em: Adobe XD, Illustrator, Figma, Sketch, Zeplin ou similares.

A modalidade de contratação é CLT.

As avaliações serão:
Primeira – currículo e desafio de UX/UI – até 06/04.
Segunda – entrevista – 08/04.

Ficou interessado? Confere o link aqui.

 

 

Categorias
Ciência de Dados Programação Vagas Encerradas

Resultados das bolsas de Cientista de Dados e Programador Web

Notícia boa e em dose dupla!

Saíram  os resultados dos editais para bolsistas Cientista de Dados e Programador Web . 

Os candidatos aprovados receberão e-mails em breve com as orientações futuras.

Se você tava na ansiedade, clica aqui no link  e confira.

Sair da versão mobile