Minérios & Dados – Parte 2

No primeiro post da série eu apresentei uma analogia direta entre Mineração real e Mineração de Dados. Minha esperança era ter encontrado uma forma simples de responder a pergunta “O que é o produto?”.

No post de hoje eu vou explorar essa analogia e apontar algumas das etapas em um projeto de mineração tradicional e construir uma explicação simples de como projetar e conduzir projetos de Data Mining.

Ilusões Esmeraldas

Você se lembra de expedições chamadas bandeiras, sobre as quais aprendemos na escola? Bandeiras desbravavam nossos sertões e cumpriam várias funções: conseguir mão-de-obra (escravos), expandir recursos (criar plantações e vilarejos), conhecer o território e buscar minérios e pedras preciosas. Uma das mais famosas foi a Bandeira de 1674, que tinha como uma das metas encontrar certa lendária montanha, cheia de prata e esmeraldas. Do verbete da Wikipedia:


A 8 de agosto de 1672, Fernão Dias Pais Leme se apresentou à câmara de São Paulo a chamado de seus oficiais e declarou que, em cumprimento da carta régia, partiria em março seguinte para o sertão de Sabaraboçu a fim de descobrir prata e esmeraldas. Itaverava-uçu ou Sabarabuçu era a “serra que resplandece”, inventada por Filipe Guilhem: sertanista castelhano, a procurar nas “gerais” sem tamanho a misteriosa montanha de prata ou esmeralda, visão do paraíso…


O destaque é meu. Quer dizer, ninguém tinha a menor idéia se existia ou não um veio explorável de qualquer coisa, em algum lugar! Fernão Dias aventurar-se-ia pela mata selvagem em busca de um “visão do paraíso” descrita por outro explorador, sem a mais remota comprovação!

Hoje em Dia…

… mineração é uma ciência elaborada e muito sofisticada. Envolve desde análise de imagens de satélites, amostras de solo, Geologia e Sismologia, Física, Química e até Biologia, em busca de certeza da existência de depósitos, e depois, para o projeto, Engenharia Mecânica e Elétrica de alto gabarito, sem falar em todas as habilidades de gestão, planejamento, finanças etc. etc. etc. Abrir uma mina, hoje em dia, é um brincadeira de menino grande, com várias etapas:

Etapas de um projeto de mineração.
Etapas de um projeto de mineração.

Note que existem três etapas só de pesquisa, para apenas na quarta etapa desenvolver a mina e só então começar a produzir! Muito antes de o minério começar a sair da mina, todas as justificativas financeiras, riscos e promessas estão muito claras. O que não é tão exótico assim: para que gastar dinheiro “estragando” uma paisagem se não for valer à pena?

Projetos de Data Mining precisam ser guiados por esse mesmo raciocínio por um único motivo: é um projeto tão complexo que se não houver um objetivo bem claro, ele vai dar em nada com certeza. Data Mining não é uma ferramenta, que acaba sendo aproveitada em usos paralelos se o uso principal falhar. Nem tão pouco é uma produto essencial, como um ERP ou BPMS, que toda empresa deve ter e por isso é melhor instalar e começar a usar o quanto antes, mesmo sem ter muito claros os detalhes. Toda essa zoeira em torno de BigData e Data Science ajuda a piorar o cenário, pois acabam funcionando como uma cortina de fumaça em volta do assunto.

Data Mining é difícil, é a coisa mais difícil de BI, que é uma disciplina difícil por natureza. Sem um plano bem claro e justificado, Data Mining dá em nada. Pior: dá em desperdício de tempo e dinheiro.

Projeto de Data Mining

Vamos olhar as etapas da figura anterior e compará-las a uma iniciativa de Data Mining numa empresa. Antes de começar, vamos reforçar o que aprendemos no post anterior:

O produto de Data Mining é um Modelo Matemático, da mesma forma que o produto de Mineração é o minério: ambos servem de insumo para produção de algo. Minérios são refinados em produtos, e Modelos Matemáticos são refinados em decisões automáticas.Nosso projeto de Data Mining quer desencavar um modelo. Em que dados? De que maneira? Que valor?

Vamos adiante com a analogia.

Geociência

A primeira etapa de um projeto de mineração fornece dados que encoragem a exploração, que sugiram que ali pode haver uma boa oportunidade. É a etapa que responde a perguntas “o quê estamos procurando?” e “porque aqui e não ali?” Em nossa analogia, Geociências é transformada em Conhecimento de Negócio, puro e simples. É o conhecimento de negócio e da operação da organização que diz onde pode haver uma oportunidade de ganhos.

Quem “faz” Geociência é um profissional especializado, experiente, que já fez isso outras vezes. É um cara tão importante que aparece em relatórios oficiais de minerações. Para o caso do Data Mining estamos falando de uma pessoa com habilidades de Matemática e Estatística de nível de Ensino Superior, com visão estratégica e conhecimento de negócio. Não bastasse isso, é alguém que precisa ter alguma experiência na atividade de avaliar organizações, seus processos de negócio, seus dados e vislumbrar oportunidades de negócio nos dados.


Cientistas de Dados, que é o título de Analistas de Data Mining por esses dias, não se qualificam. Podem ser uma alternativa, na falta do referido profissional, mas não é o ideal porque, em geral, está muito focado nas técnicas e ferramentas, e menos na visão de negócio.


Exploração & Descoberta

A exploração é levada adiante por mineiros e prospectos técnicos, e tem a função de encontrar o depósito mineral propriedamente dito. Depois de o geocientista levantar a forte suspeita da existência de um aluvião qualquer, é essa etapa que vai tirar a prova dos nove e dizer que ali tem mesmo alguma coisa.

Em Data Mining é a tal da Prova de Conceito, ou PoC. Conduzidos pelo “Geocientista Empresarial” (Cientista de Negócios??? Aff…), um time com um Analista de Data Mining e outros SMEs (Subject Matter Experts, tais como DBAs, Financistas, Marketeiros etc.) faz a primeira avaliação da oportunidade levantada. Dá para fazer? Existem dados suficientes? Vai chegar a um resultado ou calcular por anos a fio? E que resultado vai trazer? Qual serã seu ROI?

Eu não gosto do termo, mas entendo que esta etapa pode ser caracterizada por uma buzzword que não colou: Business Discovery. A expressão, agora dentro do conceito de mineração, traz um significado claro: é o resultado da exploração dos dados crús da empresa e aponta para um “veio virtual de dados valiosos”. Eu suspeito que esse era o conceito imaginado por empresas que vivem da buzzword Data Discovery – tanto que BD foi tentado antes, não colou e “morfou” em Data Discovery.

Agora, uma vez que a oportunidade de negócio identificada na primeira etapa, Geociência, foi avalizado por esta etapa anterior, Descoberta, nos resta decidir se vamos adiante, construir o modelo.

Desenvolvimento

É neste ponto que a mina ganha corpo, que figurativamente sai do subterrâneo. É o momento de comprar equipamentos, contratar pessoas e treinar mineiros e, enquanto isso acontece, licenças de operação foram (ou estão sendo) negociadas e adquiridas, uma rede de logística é desenhada, e assim por diante, com muitas coisas acontecendo interdependentemente.

Em Data Mining, nesta etapa, a equipe provisória é formalizada, com os eventuais ajustes, os ambientes e recursos são amealhados, e o projeto de Data Mining ocorre.


Note que em Data Mining estamos uma fase adiantados em relação ao projeto de uma mineração real: o produto da mina – o minério – só vai começar a sair na próxima etapa, mas o produto do projeto de Data Mining – O Modelo – ficará pronto na etapa atual. Até entendo que podemos discutir isso, e eventualmente jogar a produção do modelo para etapa seguinte e declarar esta aqui como uma etapa de planejamento, de venda interna etc. Mas, IHMO, a venda precisa ter sido feita lá atrás, antes da PoC. E depois, montar um projeto de DM é incomparavelmente mais simples e rápido que montar um projeto de uma mina.


Esta etapa possui subdivisões próprias, tal como um projeto de mineração. O Analista de Data Mining constrói, testa e valida o modelo. Esse analista precisa ter uma formação operacional sólida, tem que dominar suas ferramentas e ser do ramo. Não dá para aprender a construir modelos por tentativa e erro, experimentando ora isso, ora aquilo. É preciso saber o que se está fazendo, sob o risco de encontrar um modelo errado.

Ao final desta etapa teremos o Modelo, que é equivalente ao minério extraído pela mina.

Produção

Para a mineração, é aqui que o produto aparece. Ele vem na forma de lingotes, pelotas, fios ou barras, puros ou combinados em ligas, e caem no mercado para venda. Graças à peculiariedades das cadeias de suprimento de nosso mundo moderno, essa produção sempre tem um destino praticamente certo, quando não pago em adiantado.

No projeto de Data Mining, por outro lado, é quando o modelo é posto para trabalhar e gera decisões automáticas. O que acontece nesta etapa depende de como a etapa anterior, modelagem, foi tratada.

Se o Desenvolvimento restringiu-se à criação do modelo, então esta etapa implica em um novo projeto, ou um sub-projeto independente, que é a integração do modelo aos sistemas da empresa. Por exemplo, se o modelo faz a seleção de produtos em uma mala-direta, então ele precisa ser integrado ao gerenciador de campanha e isso requer, via de regra, um mini-projeto. A equipe conta com o Analista de Data Mining, mas fora isso quase sempre é diferente da anterior. Os ambientes são outros e a infra-estrutura envolvida agora é a operacional. Findado esse mini-projeto de integração, o projeto de Data Mining entre em modo de monitoramento, avaliação e ajuste do modelo – operação contínua.

O contra-exemplo é um modelo de pontuação de crédito (Credit Scoring), no qual vários parâmetros são passados e uma pontuação é retornada. Esse tipo de integração pode ser feito por meio de um webservice, um webservice que pode ser construído na etapa anterior, ao longo de um projeto paralelo para integrar o novo método de scoring ao sistema transacional. Neste caso, a presente etapa assume apenas o modo de operação contínua.

Conclusão

Do post anterior tiramos o conceito de produto em um projeto de Data Mining: um modelo matemático, que pode ser usado para gerar decisões automáticas no sistema transacional.

Hoje chegamos a uma nova analogia: as etapas de um projeto de Data Mining:

  1. Geociência: usar o conhecimento de um especialista em Data Mining e negócios para identificar oportunidades nos dados;
  2. Exploração & Descoberta: Prova de Conceito liderada por um Analista de Negócio em conjunto com um Analista de Data Mining para determinar a viabilidade e o ROI da oportunidade;s
  3. Desenvolvimento: desenvolvimento do modelo, usando o método SEMMA por exemplo;
  4. Produção: integração do modelo nos sistemas da organização.

Alguém pode argumentar que essas quatro etapas já existem dentro do CRISP-DM e que estou apenas explicando-o com minhas próprias palavras. Concordo. Minha intenção não é inventar um método, mas ajudar o não-Data Miner a entender o assunto. Nesse sentido, sim, é uma repetição do CRISP-DM. Só que as três primeiras fases do CRISP-DM, tal como estão colocadas, me dão a sensação de que primeiro decidimos por um projeto de Data Mining e só depois envolvemos o negócio, quando na realidade isso não funciona – acredite-me, já vi mais que minha cota disto nestes últimos 15 anos.

Para obter sucesso é o Negócio que deve impulsionar o projeto de Data Mining, não o contrário. Justamente para ajudar o executivo que precisa tomar pé no assunto eu reescreveria o CRISP-DM com outros termos, como por exemplo:

Etapas de um projeto de Data Mining.
Etapas de um projeto de Data Mining.
Eu ainda não senti aquela epifania que me acomete quando eu tenho certeza que bati em cima. Sinto que está faltando alguma coisa, que dá para melhorar. E até que eu consiga uma abordagem melhor, o que você achou desta? Ajudou? ;-)

Pentaho Seis Saiu!

Acabei de verificar no SourceForge e está lá:

151014_PentahoSeis_01

Você pode conferir pessoalmente, clicando aqui, mas eu entrei em todos os diretórios e confirmei: a versão seis está disponível para download:

Lista de pastas: Pentaho BA Server 6 ainda com poucos downloads.
Lista de pastas: Pentaho BA Server 6 ainda com poucos downloads.

Ladies and gentlemen, start your download engines! :-)

Latinoware 2015 – Eu Vou!

Ora, quem diria, eu fui convidado à participar da Latinoware 2015! :-)

Meu perfil no site da Latinoware. Preciso melhorar essa foto...
Meu perfil no site da Latinoware. Preciso melhorar essa foto…

Minha palestra será “Inteligência Institucional para o Governo Digital”:

Minha palestra na grade: 10H00min @ 15/10/15.
Minha palestra na grade: 10H00min @ 15/10/15.

Eu vou mostrar como as tecnologias atuais – com 100% de Software Livre – habilitam a construção de um Armazém de Dados de proporções continentais. Por falta de nome melhor ele chama-se Armazém de Dados Governamental (ADG ou GDW) e pode ser construído para qualquer esfera de poder: municipal, estadual ou federal.

Consegue imaginar 27 ADGs estaduais integrados? É como construir a Matriz: vai estar tudo lá dentro!!

Semana que vem, dia 15/10/2015 às 11H00min (logo após a palestra), a apresentação estará disponível em PDF aqui no blog.

Vejo vocês por lá!

Data Mining as a Service

Bill Inmon advoga o conceito de Fábrica de Informações Corporativas, ou CIF:

Corporate Information Factory (2001) por Bill Inmon.
Corporate Information Factory (2001) por Bill Inmon.

A idéia toda faz muito sentido: uma equipe dedicada a manter um DW corporativo, que tem como tarefas manter a ingestão de dados em dia, enquanto produz os Data Marts necessários para cada demanda interna. O conceito de BICC, ou Centro de Competências de BI, segue na mesma direção. Pelo que eu entendi dos dois, o BICC dá atenção às formas de apresentar e explorar os dados, e não apenas de coletar e disponibilizar os dados. Eventualmente é o BICC que recebe projetos de Data Mining.

No post anterior eu elaborava sobre a dificuldade que às vezes tenho em explicar o que é o produto de um projeto de Data Mining. No meio de uma dessas reuniões em os executivos questionam “o que é o produto”, eu saí com essa:


Veja, depois que você construir a infraestrutura para implementar um modelo, qualquer novo modelo pode ser implementado nesta mesma infraestrutura. No máximo com mudanças de softwares. Podemos até falar uma buzzword, porque todo mundo adora buzzwords: Data Mining as a Service. Olha só, dá até para falar que o produto é de mais – DMaaS!


Mesmo para um piadista infame como eu, esse deve ter sido um novo “fundo”, hehe.

Oi, nosso produto é DMaaS! Compre!(Deu para ouvir a gritaria histérica daqui…)

DMaaS

Apesar do trocadilho infeliz, a idéia tem muito sentido:

  • Um modelo permite construir um algoritmo, para tomada de decisão automática;
  • Como todo modelo, passamos algumas variáveis para o algoritmo e recebemos de volta um resultado, que pode ser um escalar (número puro), um vetor (array) ou mesmo um texto qualitativo – “comprar”, “alto risco” etc.
  • O algoritmo, em si, é algo leve, uma fórmula construída com Java, PDI ou C++. Claro que pode ser uma conta pesada, mas mesmo assim não é o mesmo que rodar uma regressão o tempo todo, mas apenas “calcular o próximo ponto da reta”;
  • Uma forma de implementar a chamada é colocar o algoritmo como uma subrotina dentro do sistema transacional que vai consumir a decisão;
  • Outra é justamente como um webservice.

Podemos montar os algoritmos como webservice! Como um serviço! Data Mining Como Um Serviço! :-O

Esse foi o percurso que meus neurônios queimaram até o infame DMaaS. Imagine só: basta incluir um sinalizador nos painéis do SugarCRM, um sinalizador – Risco de Churn! – alimentado por um valor, puxado de uma chamada HTTP que leva os parâmetros! Integração rápida, limpa e fácil! E não estamos limitados a nada: do SAP ao Zabbix, do Asterisk a qualquer sistema doméstico, interno ou externo – qualquer coisa!

E o que é preciso? Saber fazer Data Mining – só!

Bom, já sabem, né? Se vierem com Data Mining as a Service por aí, lembre-se: você viu primeiro no Geek BI! :-)