Prevendo o Futuro, Parte 2: Técnicas de Modelagem Preditiva

Este é o segundo artigo de uma série de quatro partes que aborda os aspectos mais importantes da análise preditiva. A Parte 1 ofereceu uma visão geral da análise preditiva. Este artigo aborda as técnicas da modelagem preditiva e os algoritmos matemáticos que formam o núcleo da análise preditiva.

Alex Guazzelli, VP of Analytics, Zementis, Inc.

Photo of Alex GuazzelliO Dr. Alex Guazzelli é VP of Analytics na Zementis Inc., onde é responsável pelo desenvolvimento das principais tecnologias e soluções preditivas sob a denominação ADAPA, uma plataforma de tomada de decisão baseada na PMML. Com mais de 20 anos de experiência em análise preditiva, o Dr. Guazzelli é PhD em Ciência da Computação pela University of Southern California e é coautor do livro PMML in Action: Unleashing the Power of Open Standards for Data Mining and Predictive Analytics, agora, em sua segunda edição.



31/Ago/2012

Introduction

Como sociedade, estamos acumulando dados em escala exponencial. A IBM relata que 90% dos dados disponíveis atualmente foi criado somente nos últimos dois anos. Felizmente, existem muitas técnicas de modelagem preditiva, incluindo redes neurais (NNs), armazenamento em cluster, support vector machines (SVMs), regras de associação, para ajudar a transformar esses dados em insight e valor. Elas fazem isso aprendendo padrões ocultos em grandes volumes de dados históricos. Quando o aprendizado for concluído, o resultado é um modelo preditivo. Após ser validado, o modelo consegue generalizar o conhecimento aprendido e aplicá-lo a uma nova situação. Como as técnicas de modelagem preditiva podem aprender com o passado para prever o futuro, elas estão sendo aplicadas a uma série de problemas, tais como sistemas de recomendação, detecção de fraude e abuso, e prevenção de doenças e acidentes. A disponibilidade de "big data" e de energia de processamento rentável está expandindo a aplicabilidade de técnicas preditivas acionadas por dados em diferentes segmentos de mercado. Com isso, a matemática inteligente está ajudando cada vez mais as empresas a realizarem o potencial real oculto em seus dados.

A análise preditiva está sendo utilizada por empresas e indivíduos em todo o mundo para extrair valor de dados históricos obtidos de pessoas e sensores. Dados de pessoas incluem transações estruturadas de clientes (por exemplo, de compras online) ou dados não estruturados obtidos da mídia social. Por outro lado, dados de sensores são obtidos a partir de um bombardeio de dispositivos utilizados para monitorar estradas, pontes, prédios, maquinário, grade elétrica, atmosfera e clima. Neste artigo, o foco será nas técnicas de modelagem. Elas são os algoritmos matemáticos utilizados para "aprender" os padrões ocultos em todos esses dados.

Após ser desenvolvido e validado, o modelo preditivo consegue generalizar o conhecimento aprendido dos dados históricos para prever o futuro. Dessa forma, ele pode ser utilizado para prever, por exemplo, o risco de perda ou deserção de clientes, no caso de dados de pessoas; ou o risco de quebra de maquinário, no caso de dados de sensores. Modelos como esses calculam a pontuação ou o risco implementando uma função de regressão. Modelos preditivos também podem ser utilizados para implementar uma função de classificação na qual o resultado é uma classe ou categoria.

No entanto, o tipo do modelo não é importante; uma coisa é certa: Modelos preditivos já estão formando nossas experiências independentemente de onde formos e do que for feito. Eles sugerem produtos e serviços com base em nossos hábitos. Ajudam profissionais da saúde a desenvolver e implementar medidas preventivas que salvam vidas, considerando nossa suscetibilidade com relação a determinada doença.


O nascimento de um modelo preditivo

Modelos preditivos surgem quando dados são utilizados para treinar uma técnica de modelagem preditiva. Em linguagem formal, dados + técnica de modelagem preditiva = modelo.

Um modelo preditivo é o resultado da combinação de dados e matemática, onde o aprendizado pode ser transformado na criação de uma função de mapeamento entre um conjunto de campos de dados de entrada e uma resposta ou variável de destino.

Para desenvolver um modelo preditivo, primeiro, é preciso montar o conjunto de dados que será utilizado para o treinamento. Para isso, um conjunto de campos de entrada que representa um cliente, por exemplo, é reunido a um registro. Esse registro pode conter recursos, como idade, gênero, CEP, número de itens adquiridos nos últimos seis meses e número de itens retornados, combinados a uma variável de destino que pode ser utilizada para informar se o cliente migrou ou não para o concorrente no passado. O registro de um cliente pode ser matematicamente descrito como um vetor em um espaço de recurso multidimensional, já que diversos recursos estão sendo utilizados para definir o objeto do tipo de cliente. Quando todos os registros de cliente estiverem reunidos, eles se tornam um conjunto de dados que pode conter milhões de registros. a Figura 1 mostra uma representação bidimensional (utilizando os recursos "age" e "numbers of items purchased") de alguns vetores de entrada ou objetos do cliente.

Figura 1. Representação bidimensional de vetores de entrada, na qual cada vetor ou objeto do cliente é representado por uma estrela amarela
Representação bidimensional de vetores de entrada, na qual cada vetor ou objeto do cliente é representado por uma estrela amarela

As técnicas de modelagem preditiva permitem o desenvolvimento de modelos preditivos precisos, contanto que existam dados suficientes e que a qualidade dos dados não seja uma preocupação. Dados inválidos geram modelos inválidos, independentemente da qualidade da técnica preditiva. Como diz o ditado, entra lixo, sai lixo.


Técnicas comuns de modelagem preditiva

Atualmente, existe uma série de técnicas preditivas para o desenvolvimento de modelos. Diferentes técnicas são suportadas por sistemas e fornecedores distintos, mas cerca de meia dúzia de técnicas são bastante suportadas por grande parte dos ambientes de desenvolvimento de modelos comerciais e de software livre. Embora algumas sejam específicas a uma única classe de problemas, outras são genéricas e podem ser utilizadas para uma variedade de aplicativos. Support vector machines (SVMs), por exemplo, se encaixam nessa categoria.

Uma SVM mapeia vetores de dados de entrada em um espaço dimensional maior no qual um "hiperplano ideal" (que separa os dados) é construído. Dois hiperplanos paralelos são construídos em cada lado desse hiperplano. a Figura 2 mostra um exemplo no qual um hiperplano ideal é mostrado separando duas categorias de dados (triângulos e quadrados). O hiperplano ideal de separação é aquele que maximiza a distância entre os dois hiperplanos paralelos. Quanto maior a distância entre os dois hiperplanos, mais preciso é considerado o modelo. Os pontos de dados encontrados em um dos dois hiperplanos paralelos que definem a distância maior são conhecidos como vetores de suporte.

Figura 2. Visualização bidimensional de um hiperplano ideal separando os dados e os vetores de suporte
Visualização bidimensional de um hiperplano ideal separando os dados e os vetores de suporte

SVMs, bem como NNs e modelos de regressão logísticos, são técnicas genéricas eficientes que, embora matematicamente diferentes, geram resultados um tanto comparáveis. As árvores de decisão representam outra técnica de modelagem preditiva que se destaca por sua capacidade de explicar a lógica por trás da saída produzida. Como são fáceis de usar e entender, é a técnica de modelagem preditiva mais comum.

Por outro lado, as técnicas de armazenamento em cluster são bastante populares quando a variável de destino ou de resposta não for importante ou não estiver disponível. Como o nome sugere, as técnicas de armazenamento em cluster conseguem armazenar dados de entrada em cluster, dependendo da semelhança. A figura 3 mostra um exemplo no qual os dados de entrada foram divididos em dois clusters. Os dados do primeiro cluster são representados com o uso de triângulos verdes e os dados do segundo cluster são representados com o uso de quadrados vermelhos.

Figura 3. Visualização bidimensional do resultado do armazenamento de um conjunto de dados de entrada em dois clusters: triângulos verdes e quadrados vermelhos
Visualização bidimensional do resultado do armazenamento de um conjunto de dados de entrada em dois clusters: triângulos verdes e quadrados vermelhos

Quando uma variável de destino ou medida de semelhança não for importante, mas as associações entre os itens de entrada for, pode ser utilizada uma técnica conhecida como regras de associação para encontrá-las. Por exemplo, regras de associação podem ser utilizadas para descobrir que pessoas que compram fraldas e leite também compram cerveja.

Embora todas as técnicas preditivas apresentem pontos fortes e fracos diferentes, a precisão do modelo depende bastante dos dados brutos de entrada e dos recursos utilizados para treinar um modelo preditivo. Como já foi mencionado, o desenvolvimento do modelo envolve uma grande quantidade de análise e manipulação de dados. Geralmente, um subconjunto é selecionado de centenas de campos de dados brutos disponíveis e esses campos são pré-processados antes de serem apresentados a uma técnica de modelagem preditiva. Dessa forma, o segredo por trás de um bom modelo preditivo muitas vezes depende da boa manipulação dos dados, ainda mais do que da técnica utilizada para treinar o modelo. Isso não quer dizer que a técnica preditiva não é importante. Se a técnica errada for utilizada ou o conjunto errado de parâmetros de entrada for escolhido, os dados bons não irão ajudar.

NNs, por exemplo, encontram-se em todas as formas e formatos. A seleção de uma estrutura de rede adequada é importante para desenvolver um bom modelo preditivo. Como mostra a A figura 4, NNs feedforward são compostas por uma camada de entrada com tantos nós quanto campos e recursos de entrada sendo considerados, o que, no caso de uma função de regressão, consiste em um único nó que representa o campo previsto. No entanto, entre camadas de entrada e de saída, a rede neural pode ser configurada com qualquer número de camadas e nós ocultos. O problema aqui é que, se você oferecer muito poucos nós ocultos a uma NN, ela pode não aprender a função de mapeamento entre os campos de entrada e o destino. Com muitos nós, ela será alimentada em excesso, ou seja, irá aprender os dados de entrada completamente, mas não conseguirá prever eventos futuros.

Figura 4. Rede neural feedforward com camadas de entrada, ocultas e de saída
Rede neural feedforward com camadas de entrada, ocultas e de saída

As técnicas de armazenamento em cluster requerem que o número de clusters seja fornecido antes do treinamento. Nesse caso, se esse número for muito pequeno, o modelo pode perder diferenças importantes nos dados de entrada, já que ele está sendo obrigado a depositar dados diferentes juntos. Por outro lado, se o número de clusters for muito grande, ele pode perder semelhanças importantes. No exemplo mostrado na A figura 3, se o número de clusters tivesse sido configurado para três, não dois, um cluster extra teria sido criado, o que provavelmente teria ocultado a verdadeira natureza dos dados (triângulos amarelos ou quadrados roxos?).

Os modelos preditivos também podem se beneficiar de diferentes técnicas de modelagem ao mesmo tempo. Isso se deve ao fato de que muitos modelos podem ser combinados no que é chamado de um conjunto de modelos (Figura 5,). Dessa forma, a saída do conjunto é desenvolvida para aproveitar o conjunto diferente de pontos fortes inerentes aos diversos modelos e técnicas.

Figura 5. Representação diagramática de um conjunto de modelos no qual as pontuações de todos os modelos são calculadas e a previsão final é determinada por um mecanismo de votação ou pela média
Representação diagramática de um conjunto de modelos no qual as pontuações de todos os modelos são calculadas e a previsão final é determinada por um mecanismo de votação ou pela média

Aprendizado supervisionado versus não supervisionado

SVMs, árvores de decisão, NNs e modelos de regressão utilizam o aprendizado supervisionado para criar a função de mapeamento entre um conjunto de campos de dados de entrada e uma variável de destino. O resultado conhecido é utilizado como um professor que supervisiona o aprendizado de seu aluno. Quando um aluno comete um erro, o professor fornece a resposta correta na esperança de que o aluno acertará em algum momento. Por exemplo, ao ser apresentado a um conjunto específico de entradas, sua saída será correspondente ao destino.

Como ilustração, considere o treinamento de uma NN (mostrado na Figura 4) para prever a perda ou defecção de clientes devido a um atrito. Começamos reunindo um conjunto de campos de dados de entrada que representa um determinado cliente que migrou para o concorrente no passado. Ele pode consistir em idade, gênero, assim como recursos relacionados à satisfação, como o número de reclamações. Esse cliente, agora representado por um conjunto de campos de dados e pelo resultado da defecção, é apresentado à NN para aprendizado. Ele pode ser apresentado diversas vezes até que a NN consiga aprender o relacionamento entre a entrada e o destino. No entanto, esse cliente não está isolado. É somente um entre tantos outros. O mesmo processo precisa ser repetido para todos os clientes, migrados ou não. Para aprender a diferenciar entre os dois resultados possíveis, a NN precisará criar uma representação abstrata para os clientes que migraram ou não para o concorrente.

Um algoritmo de aprendizado bem conhecido utilizado para NNs feedforward é chamado de backpropagation. Ele permite que o erro, ou a diferença entre o destino e a saída, seja propagado de volta à rede e, em seguida, seja utilizado para ajustar os pesos da sinapse que ligam os nós de rede. Dessa forma, a rede acaba aprendendo a tarefa em questão, mesmo que pouco a pouco. No entanto, sem o destino, esse processo não seria viável.

O aprendizado não supervisionado não requer nenhum professor ou destino. As técnicas de armazenamento em cluster se enquadram nessa categoria. Como mostrado A figura 3, os pontos de dados são simplesmente agrupados com base sua semelhança. Em caso de perda de um cliente, uma técnica de armazenamento em cluster possivelmente poderia designar diferentes clusters a clientes migrados ou não, mesmo que o resultado não estivesse disponível durante o treinamento do modelo.


Analítica de caixa preta

Caixa preta é um termo utilizado para identificar determinadas técnicas de modelagem preditiva cuja lógica não é possível ser explicada. Embora extremamente eficientes, técnicas como NNs e SVMs se enquadram nessa categoria. Considere nosso modelo de NN altamente preciso, treinado para diferenciar clientes migrados de não migrados. Se ele gerar um alto risco de perda para um determinado cliente, não será possível dizer o motivo. Isso levanta uma questão importante: o modelo preditivo deve conseguir explicar sua lógica? Bem, a resposta pode ser "depende". Em casos nos quais o risco gerado por um modelo preditivo é utilizado para acionar uma ação adversa, uma explicação é geralmente desejável e, em alguns casos, até mesmo necessária. Por exemplo, quando uma pontuação de risco é utilizada para recusar um aplicativo de empréstimo ou uma transação de cartão de crédito.

Quando a explicação for uma obrigação, é preciso considerar o uso de uma técnica de modelagem preditiva que claramente aponta as razões de suas decisões. Scorecards se encaixam muito bem nesse critério. Baseados em modelos de regressão, scorecards são uma técnica popular utilizada por instituições financeiras para avaliar o risco. Com eles, todos os campos de dados em um registro de entrada são associados a códigos de razão específicos. Durante o processamento, os campos de dados são ponderados em comparação a uma pontuação de risco de linha de base. Após os campos com a mais alta influência da saída final serem identificados, seus códigos de razão de associação são retornados juntamente com a saída.

Assim como os scorecards, as árvores de decisão são fáceis de explicar e entender. Em uma árvore de decisão, todo o processo de decisão é representado por um conjunto de condições legíveis por humanos, isto é, um conjunto de regras. Um nó folha em uma árvore de decisão é alcançado após um conjunto de condições ser avaliado como verdadeiro. A Figura 6 mostra a representação gráfica de uma árvore de decisão para classificar a planta Iris em três classes distintas, com base no comprimento da pétala. As classes de destino são: Iris-Setosa, Iris-Virginica e Iris-Versicolor. Para mais informações sobre o conjunto de dados da Iris, consulte Asuncion, A. e Newman, D.J. (2007). UCI Machine Learning Repository. Irvine, CA: University of California, School of Information and Computer Science (consulte Resources). Observe que a árvore pode ser representada por um conjunto de regras. Por exemplo, para identificar as plantas Iris-Setosa, a regra seria simplesmente afirmar: "Se o comprimento da pétala for menor que 2,6, então, a planta é Iris-Setosa com probabilidade 1".

Figura 6. Uma árvore de decisão simples utilizada para classificar a planta Iris. Classes possíveis: Iris-Setosa, Iris-Versicolor e Iris-Virginica
Uma árvore de decisão simples utilizada para classificar a planta Iris. Classes possíveis: Iris-Setosa, Iris-Versicolor e Iris-Virginica

Embora a lógica por trás das decisões geradas pelas técnicas de modelagem de caixa preta seja difícil de explicar, os modelos em si não deveriam ser. Felizmente, agora, a representação do pré-processamento de dados, bem como dos modelos preditivos, é direta com a PMML, a Predictive Model Markup Language. A PMML é o padrão utilizado por todas as melhores empresas de analítica para produzir e consumir soluções preditivas. Como tal, ela permite que todas as técnicas preditivas mencionadas neste artigo sejam representadas em um único formato padrão. Quando for representado por um arquivo de PMML, o modelo preditivo pode ser imediatamente movido da área de trabalho do cientista, onde foi desenvolvido, para o ambiente operacional, onde é colocado em funcionamento. Dessa forma, novos modelos ou quaisquer atualizações a modelos existentes podem ser imediatamente implementados de maneira operacional. Como um padrão aberto que pode ser entendido por todos, a PMML é utilizada como uma ponte, não somente entre o desenvolvimento do modelo e os sistemas de implementação, mas também entre todas as pessoas envolvidas no processo analítico de uma empresa. Dessa forma, ela assegura a transparência e dissemina o conhecimento e as melhores práticas. Para mais informações sobre a PMML, consulte Resources.


Conclusão

Um oceano cada vez maior de dados nos cerca e a analítica permite a navegação segura. Dados históricos reunidos de pessoas e sensores estão transformando nosso mundo, pois eles permitem o desenvolvimento de modelos que podem literalmente utilizar o passado para prever o futuro. Esses chamados modelos preditivos são, na verdade, um produto de técnicas matemáticas aplicadas aos dados.

NNs, SVMs, árvores de decisão, regressão linear e logística, armazenamento em cluster, regras de associação e scorecards são as técnicas preditivas mais populares utilizadas por cientistas de dados atualmente para aprender os padrões ocultos dos dados. Embora consigam aprender e generalizar, essas técnicas não somente precisam de dados, mas também tendem a consumir muita energia de processamento. Por isso, só agora as soluções preditivas estão experimentando um boom em todos os segmentos de mercado, devido ao surgimento de: 1) big data derivado de pessoas e sensores; 2) plataformas de processamento rentáveis, como as baseadas em Nuvem e no Hadoop; e 3) PMML, um padrão aberto refinado e maduro utilizado para representar a totalidade de uma solução preditiva. Combinados, esses três fatores geram modelos eficientes que podem começar a tomar decisões imediatamente, independentemente do tamanho da empresa.

Na verdade, os cientistas de dados estão trabalhando arduamente no desenvolvimento de soluções preditivas com os dados que nós, como sociedade, estamos reunindo em um ritmo cada vez mais rápido. Quando combinados a técnicas analíticas inteligentes, esses dados oferecem o potencial de transformar o mundo em um lugar mais inteligente, no qual a prevenção de crimes, doenças ou acidentes se torna uma realidade verdadeira, não somente uma previsão.

Recursos

Aprender

  • Follow your Rules, but listen to your Data: Assista a apresentação de Alex Guazzelli na Conferência Rules Fest 2010 que dá ênfase às diferenças entre o conhecimento baseado em dados e de especialista, bem como os benefícios de juntá-los.
  • Análise preditiva na assistência médica (Alex Guazzelli, developerWorks, Novembro de 2011): Leia este artigo sobre os desafios e aplicações de análise preditiva na assistência médica.
  • The Heritage Heath Prize: Saiba mais sobre o concurso altamente divulgado, que visa identificar quem será internado em um hospital no próximo ano, usando dados do histórico de pedidos de assistência médica.
  • O que é PMML? (Alex Guazzelli, developerWorks, Setembro de 2010): Leia este artigo sobre o padrão PMML usado por empresas de analítica para representar e mover soluções preditivas entre sistemas.
  • UCI Machine Learning Repository: Encontre o conjunto de dados Iris, mencionado neste artigo.
  • Análise Preditiva: Leia a página da Wikipédia sobre análise preditiva para obter uma visão geral de aplicações e técnicas comuns usadas para fazer previsões sobre o futuro.
  • PMML in Action (2ª Edição): Unleashing the Power of Open Standards for Data Mining and Predictive Analytics (Alex Guazzelli, Wen-Ching Lin, Tridivesh Jena; CreateSpace, Janeiro de 2012): Aprenda a representar seus modelos preditivos enquanto vê a prática em PMML.
  • Data Mining Group (DMG) é um consórcio independente liderado por fornecedores que desenvolve padrões de mineração de dados, como a Predictive Model Markup Language (PMML).
  • Páginas de recursos de PMML da Zementis: Explore exemplos completos de PMML.
  • Mineração de Dados: Saiba mais sobre este assunto na Wikipédia.
  • grupo de discussão do PMML: Junte-se ao grupo no LinkedIn.
  • Equipe do IBM ILOG: Saiba mais sobre este líder reconhecido no segmento de mercado de Business Rule Management Systems (BRMS), componentes de visualização, otimização e soluções de cadeia de fornecimento, que enriquecem o portfólio de software IBM e fortalecem a iniciativa da IBM de um Planeta Mais Inteligente.
  • Mais conteúdo do segmento de mercado: Obtenha os recursos técnicos específicos do segmento de mercado mais recentes para desenvolvedores.
  • Podcasts do developerWorks: Ouça entrevistas e discussões interessantes para desenvolvedores de software.
  • developerWorks: Permaneça atualizado com os webcasts e eventos técnicos do developerWorks.

Obter produtos e tecnologias

  • IBM SPSS Statistics 20 coloca a energia da análise estatística avançada em suas mãos. Seja um estatístico iniciante ou experiente, seu conjunto abrangente de ferramentas atenderá às suas necessidades.
  • ADAPA é uma plataforma revolucionária de gerenciamento de decisões de análise preditiva, disponível como um serviço na nuvem ou no local. Ela fornece um ambiente seguro, rápido e escalável para implementar seus modelos de mineração de dados e lógica de negócios, e colocá-los em uso.
  • Experimente o IBM ILOG CPLEX Optimization Studio por 90 dias: Desenvolva rapidamente aplicativos baseados em otimização de apoio à decisão.
  • Avalie o IBM WebSphere Application Server: Crie, implante e gerencie aplicativos robustos, ágeis e reutilizáveis de negócios de SOA e serviços de todos os tipos, reduzindo os custos de infraestrutura de aplicativos com o IBM WebSphere Application Server.
  • Encontre mais software de avaliação: Faça o download de uma versão de teste, trabalhe com o produto em um ambiente seguro online, ou acesse-o na nuvem.

Discutir

Comentários

developerWorks: Conecte-se

Los campos obligatorios están marcados con un asterisco (*).


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


A primeira vez que você entrar no developerWorks, um perfil é criado para você. Informações no seu perfil (seu nome, país / região, e nome da empresa) é apresentado ao público e vai acompanhar qualquer conteúdo que você postar, a menos que você opte por esconder o nome da empresa. Você pode atualizar sua conta IBM a qualquer momento.

Todas as informações enviadas são seguras.

Elija su nombre para mostrar



Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Los campos obligatorios están marcados con un asterisco (*).

(Escolha um nome de exibição de 3 - 31 caracteres.)

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


Todas as informações enviadas são seguras.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Segmentos de mercado
ArticleID=823937
ArticleTitle=Prevendo o Futuro, Parte 2: Técnicas de Modelagem Preditiva
publish-date=08312012