170 likes | 276 Views
2. O Processo de Mineração de Dados. Etapas do Processo. Preparação de Dados. Seleção Pré-processamento Limpeza Fragmentação. Seleção. Identificação dos bancos de dados Seleção de atributos ‘Discretização’ de valores de atributos. Limpeza.
E N D
Preparação de Dados • Seleção • Pré-processamento • Limpeza • Fragmentação
Seleção • Identificação dos bancos de dados • Seleção de atributos • ‘Discretização’ de valores de atributos
Limpeza • Uma verdadeira ‘praga’ em aplicações de mineração de dados é a pobre qualidade dos dados de entrada dos algoritmos • Uma maneira de resolver ou minimizar o problema é fazer uma inspeção manual nos arquivos de dados. Para arquivos grandes, isto pode ser impraticável
Limpeza (2) • Felizmente, as próprias técnicas de mineração de dados podem ajudar a resolver o problema • Considere duas espécies de ‘sujeira’: no atributo de classificação, e nos atributos que não são de classificação • Está comprovado, da experiência, que para ‘sujeira’ em atributos de classificação, o melhor é removê-las do conjunto-treinamento. Como? • Rodando um algoritmo de classificação que procura ser espelho do conjunto de treinamento • As instâncias que caem em classes ‘sujas’ são fisicamente retiradas • Rodando um algoritmo de classificação, primeiro sem poda, e depois com poda, e assim até que não haja mais poda • As instâncias que caem em classes ‘sujas’ são logicamente retiradas
Limpeza (3) • Para a ’sujeira’ em atributos que não são de classificação, pode-se ter o auxílio de um algoritmo de classificação • O algoritmo pode descobrir atributos não confiáveis (por exemplo, o(s) atributo(s) sequer aparecendo no modelo), o que o faz logicamente remover a ‘sujeira’ do arquivo-treinamento, para os mesmos atributos • Existem diversas ferramentas para limpeza automática, inclusive software free
Fragmentação • A fragmentação consiste essencialmente em separar os dados de treinamento (conjunto-treinamento) dos dados de teste (conjunto-teste) • ‘Minimizar' a taxa de erro dos testes • O modelo induzido, se aprovado, não é perfeito • O modelo será aplicado a novos dados (conjunto-execução) • Taxa de erro estimada = f(taxa de erro dos testes)
Técnicas de Fragmentação • “Holdout” • O algoritmo é treinado com todos os dados • Para os testes • Separe aleatoriamente 2/3 dos dados para treinamento, e o restante 1/3 para teste • Preserve a independência dos dois conjuntos (interseção vazia) • Garanta também que cada classe seja propriamente representada tanto no conjunto-treinamento como no conjunto-teste — Estratificação • Induza um modelo do conjunto de treinamento (2/3) • Teste o modelo com o conjunto de teste (1/3) • Acurácia de teste: No.de Erros / Total de Testes
Técnicas de Fragmentação (2) • Validação Cruzada (“Cross Validation”)
Técnicas de Fragmentação (3) • Validação Cruzada (“Cross Validation”) • O algoritmo é treinado com todos os dados • Para calcular a acurácia de teste • Calcula-se a média das taxas de erro dos três testes realizados • Note que os modelos podem variar ligeiramente, em relação ao modelo treinado e apresentado • Usa-se cada vez mais "stratified tenfold cross-validation“ • Os dados são aleatoriamente divididos em dez partes • Como consequência da estratificação, o modelo treinado praticamente não varia
Outras Métricas de Qualidade Positivo e Negativo valem para atributos de classificação binários Classe ‘1’ – positivo Classe ‘0’ – negativo
Outras Métricas de Qualidade (2) • Exemplos • A percentagem de todas as instâncias da classe esporte que foram classificadas corretamente é o “recall” • A percentagem de instâncias corretamente classificadas como esporte é a precisão • F-measure: média harmônica de precisão e “recall” • Alta precisão é sempre muito importante, mas muitas instâncias esporte podem ser deixadas de lado (isto é medido por “recall”) • Programa que identifica “spam e-mail” com alta precisão e baixo “recall • Deixa “spam” na caixa de entrada (baixo “recall”) • Geralmente acerta quando joga um “spam” no lixo (alta precisão)
Transformação • Cada algoritmo de mineração de dados necessita de uma entrada específica • A finalidade da transformação é então de transformar os dados preparados, de modo a torná-los compatíveis com as entradas dos diversos algoritmos de mineração de dados • Exemplo: gerar arquivos .arff para usar os algoritmos da biblioteca WEKA
Garimpagem ou Mineração • Uma vez os dados preparados e transformados, aplicam-se os algoritmos de mineração de dados, dependendo do problema • Associação • Classificação Supervisionada • Classificação Não-Supervisionada • Série Temporal • Regressão • ...
Garimpagem ou Mineração (2) • “Bagging” – Técnica de Meta Classificação • Usa um classificador de classificadores Indução dos Modelos Para cada uma das t iterações (“stratified tfoldcross-validation”) Aplique um algoritmo Salve o modelo resultante aprovado Previsão (ou Predição) Para cada um dos modelos aprovados Classificar a instância de execução* Retornar a classe mais votada *- instância de treinamento e instância de teste instãncia nova
Análise e Assimilação • Nesta etapa, a seguinte questão deve ser respondida: o conhecimento gerado é relevante e acionável (isto é, deve ser usado para a tomada de decisão)? • Se a resposta não for satisfatória, então poderá ser necessário repetir todo ou parte do processo de MD