Qlik Community

Qlik Brasil

Announcements
Coming your way, the Qlik Data Revolution Virtual Summit. October 27-29. REGISTER
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Contributor
Contributor

Pytools - Data Science para todos no Qlik Sense

Olá pessoal da Comunidade Qlik,

Comecei a desenvolver um projeto de Data Science dentro da empresa que trabalho atualmente. Procurando soluções open source e possíveis integrações com o Qlik encontrei  o Pytools. Este Server Side Extension disponibiliza algoritmos para análises avançadas no Qlik Sense, tornando algoritmos de ciência de dados mais acessíveis para as áreas de negócio.

A Extensão (SSE) para Qlik foi construída utilizando uma serie de algoritmos em Python com a intenção de fornecer um conjunto de funções que podem ser usadas como expressões no Qlik Sense. Pelo o projeto ser open source, a customização e criação de novos algoritmos fica aberta para todos, de acordo com a necessidade.

Juntamente com esse projeto, estou aplicando o conceito de Data Literacy com o foco de ensinar para as áreas de negocio sobre importância da leitura e a escrita de dados. Desta forma, os funcionários da empresa podem tomar decisões mais confiantes e orientadas a dados. Melhorar as habilidades de analise, estatística  e analítica tem sido um dos maiores desafios ate o momento.

Voltando para o Pytools, esta versão inclui as seguintes implementações:

  • Aprendizado de Maquina supervisionado: Implementado usando scikit-learn (biblioteca Python). Este SSE implementa full machine learning flow para preparação de dados, modelagem para treino e avaliação, para fazer previsões. Além disso, modelos podem ser interpretados usando Skater.
  • Aprendizado de Maquina não supervisionado : também implementado usando scikit-learn.
  • Segmentação: implementado usando HDBSCAN, algoritmos de grande performance para analise de dados mais exploratórias.
  • Forecasting: implementado usando Facebook Prophet, uma biblioteca moderna que facilita a geração de forecasts em alta qualidade e performance.
  • Analise por sazonalidade e feriados: tambem utiliza o algoritmo Facebook Prophet.
  • Correlação Linear: implementação utilizando Pandas.

 

Sobre o processo de Setup, desenvolvimento e apresentação.

Primeira Etapa: Configurar o PyTools na Maquina local, realizar os primeiros testes das extensões, estudar e customizar os algoritmos disponíveis. Nesta etapa importante ter instalado o python e seus pacotes compativeis de acordo com o versionamento (pystan, pandas, scipy, prophet etc)

Segunda Etapa: Configuração do PyTools em servidor do Qlik Sense local, inicialmente em ambiente de desenvolvimento e depois em ambiente produtivo.

Terceira Etapa: Criação de modelos relacionais, desenvolvimento métricas, fatos e dimensões no SQL Server e Qlik Sense atendendo a demandas de negocio.  

Quarta Etapa: Desenvolvimento Dashboards com funcionalidades padrão do Qlik e uso das extensões do Pytools

Quinta Etapa: Desenvolvimento de um Qlik Mart para otimização de cargas de dados nos Apps criados (Em backlog).

Sexta Etapa: Uso do Nprinting  agendando disparos de dashboards para grupos de usuarios.

 

Funcionamento de alguns algoritmos:

Clustering
Algoritmo de segmentação utiliza a seguinte expressão 

PyTools.Cluster([ID],$(vMetrica)& ';' & $(vNMetrica2), 'scaler=quantile,min_cluster_size=3,min_samples=2')

 

clustering.png

(Imagem não representa um cenário real devido a sigilo dos dados)

 

Correlação Linear

Algoritmo de correlação utiliza a seguinte expressão 

Pytools.Pearson($(vMetrica1), $(vNMetrica2))

coeficiente.png

 

Dashboard - Segmentação

Montagem de um dashboard de segmentação de dados usando HDBSCAN e seus parâmetros.

 PainelQlik.png

 

 

(Imagem sem dados devido  a sigilo dos dados)

 

Recomendações

  • Mantenha um ritmo constante de estudo em cursos presenciais ou online ( Edx, Coursera etc)
  • Crie uma documentação sobre os seus desenvolvimentos, principalmente quando trabalhar com Aprendizado de maquina e Segmentação. 
  • Estar alinhado como as areas de negocio sobre o projeto, seus valores e ganhos
  • Utilize a comunidade Qlik e se comunique com outros devs. Ajudara muito a crescer profissionalmente.
  • Ouça podcast sobre Data Science (Cabeça de Lab, Data Skeptic, Pizza de Dados)


Duvidas sobre desenvolvimento ou necessidade de material posso compartilhar um PDV com algumas instruções.

Faço este post como divulgação para a Comunidade e encontrar outros cientistas de dados que pretendem utilizar esse SSE ou tem interesse em compartilhar experiencias quanto a essa ferramenta.

 

Todo o desenvolvimento do SSE foi feito pelo Nabeel Oz. No link do GitHub é possível encontrar o setup base do projeto em inglês https://github.com/nabeel-oz/qlik-py-tools 


Lembrando, utilizar esse projeto como base é uma excelente forma de começar um projeto de Data Science. Com ótimos algoritmos de base, é possivel customizar de acordo com a sua necessidade e trabalhar o ensino do Data Literacy dentro do ambiente corporativo sem um grande investimento inicial.

Abraços e Qlik for the win.

0 Replies