• Nenhum resultado encontrado

Universidade do Algarve Faculdade de Ciências e Tecnologia Licenciatura em Informática Ramo Tecnológico

N/A
N/A
Protected

Academic year: 2021

Share "Universidade do Algarve Faculdade de Ciências e Tecnologia Licenciatura em Informática Ramo Tecnológico"

Copied!
24
0
0

Texto

(1)

Universidade do Algarve

Faculdade de Ciências e Tecnologia

Licenciatura em Informática – Ramo Tecnológico

Técnicas de clustering

Relatório

Discentes:

Ricardo Seromenho, N.º 23842

Docente:

Prof.º Doutor Patrício Serendero

(2)

2

Índice

1 Introdução 3 2 Objectivo 3 3 Data Mining 4 3.1 O que é? 4 3.2 Os dados 4 3.3 Funcionalidades 5 3.3.1 Classificação 6 3.3.2 Clustering 6 3.3.3Regressão Linear 6 3.3.4 Previsão 7 4 Clustering 7 4.1 K-Means 7 4.2 Expectation – Maximization 8 4.3 COBWEB 9 5 Descrição do Problema 9

6 Preparação dos dados 10

7 Análise dos dados 12

7.1 Preparação (Preprocess) 12 7.2 Clustering 13 7.3 Para k = 2 14 7.4 Para k = 3 16 7.5 Para k = 4 18 7.3 “Re-clustering” 20 7.3.1Para k = 2 20 7.3.2 Para k = 3 21 7.3.3 Para k = 4 21

8 Conclusões e Trabalho Futuro 22

9 Referências 23

Índice de Tabelas

Tabela 1 5 Tabela 2 10 Tabela 3 12 Tabela 4 22

(3)

3

1. Introdução

O data mining é uma evolução natural das bases de dados. Com o crescimento das bases de dados tornou-se quase uma necessidade ter ferramentas que extraíssem alguma informação útil da grande “brutidade” de dados ali existentes.

Desde à muito que o Homem tem a tendência para fazer registos do que quer que seja. Os dados climatéricos não são excepção, e é com base nos dados climatéricos de 2003 da Ria Formosa em Faro que efectuarei o meu trabalho.

2. Objectivo

O objectivo deste trabalho é estudar algumas das técnicas de clustering que existem. Compreender o que é o clustering e para que serve.

Das técnicas estudadas escolher apenas uma, aplicá-la a um conjunto de dados e mostrar os resultados.

(4)

4

3. Data Mining

As capacidades para gerar e guardar dados têm vindo a aumentar nas últimas décadas [6]. Podemos, talvez, até dizer que a Lei de Moore [5] também se aplica à quantidade de informação produzida. Calcula-se que até ao final de 1999 já se teria produzido 12 exabytes de informação, e no final de 2002 já íamos em 24 exabytes [3]. Do avanço da tecnologia que nos permitiu produzir/armazenar maior quantidade dados, rapidamente surgiu a necessidade de arranjar forma de os analisar.

3.1 O que é?

Duas definições comummente aceites de Data Mining são: “Procura de padrões de interesse numa determinada forma de representação, ou conjunto de representações: classificação, árvores de decisão, regras de indução, regressão, segmentação, e assim por diante (Fayyad e tal., 1996) ” [1] e “Exploração e análise, através de meios automáticos ou semi-automáticos, de grandes quantidades de dados com o objectivo de daí descobrir padrões e regras com interesse” [2].

Data mining não é mais do que uma ferramenta que nos permite extrair informações úteis de grandes quantidades de dados, os quais, em bruto, podem nem significar nada. É utilizado em várias áreas, nomeadamente, por empresas para obterem conhecimento dos seus dados concretos e com esse conhecimento poderem melhorar as suas campanhas de marketing, aumentar as suas vendas e muito mais. Outros exemplos são as agências financeiras, a ciência, o comércio electrónico, a astronomia, entre outros.

3.2 Os dados

Os dados são um conjunto de medidas ou de observações retiradas de qualquer ambiente ou de um processo [7]. No caso mais simples, temos uma colecção de n objectos, e para cada objecto temos um conjunto das mesmas medidas p. Neste caso podemos pensar numa colecção de medidas nos n objectos numa matriz de forma n x p. As n linhas representam os objectos para os quais as medidas foram tiradas (por exemplo: utentes de um consultório, clientes de um cartão de crédito, jogadores de

(5)

5 futebol). Essas linhas devem ser referenciadas como indivíduos, entidades, objectos ou registos, dependendo do contexto.

A outra dimensão da nossa matriz de dados contém o conjunto de p medidas em cada objecto. Normalmente, assume-se que todas as medidas p são registadas individualmente em cada objecto, contudo poderão existir conjuntos de dados em que isso não aconteça (por exemplo: diferentes testes médicos em diferentes pacientes). As p colunas da matriz podem ser referenciadas como variáveis, campos, atributos ou características; neste caso, também o nome depende do contexto no qual estamos a trabalhar.

Tabela 1

Exemplo de um conjunto de dados. (Melhores marcadores - bwin LIGA 2007/2008 [8])

# Nome Clube Posição Golos Jogos Média

1 Lisandro Porto Avançado 24 27 0,89

2 Cardozo Benfica Avançado 13 29 0,45

3 Weldon Belenenses Médio 12 27 0,44

4 Wesley P. Ferreira Avançado 11 22 0,50

5 Liedson Sporting Avançado 11 26 0,42

6 Linz Braga Avançado 11 27 0,41

7 Marcelinho Naval Avançado 9 26 0,35

8 Lito Académica Médio 9 27 0,33

9 João Paulo Leiria Médio 8 17 0,47

10 Jorge Ribeiro Boavista Defesa 8 26 0,31

Os tipos de dados podem ser vários, como por exemplo: categorias, sequências, intervalos ou booleanos [10]. Uma variável discreta tem elementos que tanto podem ser numeráveis, como números inteiros ou ainda, um conjunto finito.

3.3 Funcionalidades

Existem várias funcionalidades de data mining que são utilizadas como base da aplicação. Estas funcionalidades servem para especificar o tipo de padrões a encontrar nas tarefas de data mining. Em geral, estas funcionalidades podem ser classificadas em

(6)

6 dois tipos: descritivas e preditivas [3]. As descritivas procuram identificar um conjunto de categorias para a descrição dos dados, enquanto as preditivas procuram fazer inferência nos dados, para poder prever valores futuros ou desconhecidos de outras variáveis [1].

De seguida, explicarei sucintamente em que consistem algumas das funcionalidades de data mining:

3.3.1 Classificação

Para classificar temos de adquirir o conhecimento que nos vai fazer prever a classe de um objecto [1]. Por exemplo, na Vodafone Portugal existem classes para os telemóveis que estão à venda, tais como Vodafone live!, Vodafone live! 3G, etc; e conceitos para os clientes, dividindo-os em duas grandes classes: clientes empresariais e clientes particulares.

3.3.2 Clustering

Clustering é o processo pelo qual objectos discretos são atribuídos a grupos com características similares [9]. É assim possível identificar um conjunto finito de categorias ou segmentos para descrever os dados. Este processo não descobre um número de classes definidas pelo utilizador, descobre sim, um número de classes naturais existentes nos dados.

3.3.3 Regressão Linear

A regressão linear consiste em encontrar uma função para a previsão de uma variável. E consiste na procura de uma variável que represente, de uma forma aproximada, comportamentos de variáveis [1].

Os métodos de regressão linear permitem a discriminação dos dados através da combinação dos atributos de entrada

(7)

7 3.3.4 Previsão

A previsão tenta encontrar valores futuros desconhecidos de variáveis de interesse, com base nas variáveis que temos em nosso poder. O objectivo é quase como que saber o futuro, ou seja, o que vai acontecer a seguir.

4. Clustering

O clustering é uma funcionalidade descritiva do data mining, pois permite identificar um conjunto finito de categorias ou segmentos para descrever os dados [1].

O processo de clustering consiste em agrupar os dados em clusters para que esses dados tenham, dentro de um cluster, um grande grau de semelhança entre si. Para além disso, esses dados têm que ser muito diferentes dos dados de outros clusters. As diferenças ou as semelhanças entre os dados são descobertas com base nos atributos de cada objecto.

De seguida apresentarei 3 algoritmos de clustering. Os algoritmos que escolhi apresentar são o Cobweb, o K-Means e o Expectation-Maximization, três dos cinco que vêm, por defeito, no pacote do WEKA. O WEKA é uma aplicação que, automaticamente, analisa grandes quantidades de dados e decide qual é a informação mais relevante [13].

4.1 K-Means

Este algoritmo aceita k como parâmetro de entrada. Este k é o número de partições em que os n objectos vão ficar divididos, k < n. A semelhança entre os clusters é medida em relação aos centróides dos clusters, que podem ser vistos como o centro de gravidade dos clusters [6].

“Como funciona o algoritmo?” Primeiramente, selecciona ao acaso k objectos. Cada um desses k objectos representa, inicialmente, o centro (centróide) de um cluster ou um mean. No que diz respeito ao resto dos objectos, cada um deles é atribuído ao cluster que é mais semelhante, baseado na distância entre o objecto e o centróide. Depois são actualizados os valores dos centróides em cada cluster. Este processo continua até à convergência dos clusters ou outro critério de paragem [9].

(8)

8 Uma vez que este algoritmo aceita o parâmetro de entrada k e os centróides são escolhidos ao acaso, as soluções encontradas podem nem sempre ser as mesmas.

Pode-se dizer que é relativamente eficiente, pois a ordem de complexidade do algoritmo é O(tkn), onde n corresponde ao número de objectos, k ao número de clusters e t ao número de iterações do algoritmo.

4.2 Expectation – Maximization

Expectation-maximization, ao qual me referirei como EM, é um algoritmo que pertence à família de algoritmos de distribuição de probabilidades e densidades.

É parecido ao K-means na medida em que o conjunto de dados é computado até que o valor de convergência desejado seja atingido.

Trata-se de obter a FDP (Função de Densidade de Probabilidade) desconhecida a que pertencem o conjunto de todos os dados. Esta FDP pode-se calcular mediante uma combinação linear de componentes. Cada cluster corresponde a uma amostra de dados na qual pertence cada uma das densidades que se mede. Pode-se fazer uma estimativa da FDP de forma aleatória, utilizando FDP normais, Brernoulli, Poission…

O ajuste dos parâmetros do modelo requer uma medida likeihood. Essa medida é a decisão de o quão bem se encaixa os dados sobre a distribuição que estamos a utilizar. Trata-se então de ir à procura destes parâmetros. Maximizar o likelihood é conhecido como ML-Máximo likelihood. Normalmente, quando se quer calcular, utiliza-se o logaritmo log-likelihoo que tem uma forma analítica de cálculo, por isso fácil de determinar.

Depois temos uma série de iterações de EM, cuja expectation utiliza os valores dos parâmetros iniciais ou proporcionados por Maximization, e Maximization obtém novos valores para os parâmetros.

Finalmente, obtêm-se um conjunto de clusters que agrupam os objectos originais. Cada um destes clusters estará definido pelos parâmetros da distribuição normal.

(9)

9 4.3 COBWEB

Este algoritmo pertence à categoria de clustering hierárquico. O clustering hierárquico trabalha agrupando os objectos numa árvore de clusters [6].

O clustering COBWEB cria o seu trabalho utilizando a forma de uma árvore. As folhas representam cada objecto e o nó de raiz representa todo o conjunto de dados. Os ramos representam o que se pretende obter, ou seja, os clusters. E se existirem sub-ramos, estes representam os sub-clusters. Não existe limite para o número total de ramos e de sub-ramos da árvore sem ser, claro, o imposto pelo número de objectos que o conjunto de dados tem [17].

“Como funciona o algoritmo?” O COBWEB começa a sua árvore contendo apenas o nó de raiz, todo o conjunto de dados. A partir daí os objectos são adicionados um a um, com a árvore a ser actualizada a cada etapa do algoritmo. Quando um objecto é adicionado, é necessário encontrar o melhor sítio para o incluir. Esta operação pode requerer toda a reestruturação da árvore, incluindo a criação de um novo ramo e/ou a fusão de ramos já existentes, ou ainda, no caso mais simples, incluir o objecto num ramo que já exista.

A função para actualizar a árvore denomina-se de utilidade de categoria, que mede a qualidade geral de uma partição de instâncias num cluster. A reestruturação que obtenha maior função de utilidade de categoria é a que se utiliza nesse passo.

C1, C2, …, CK são os k clusters; ai é o atributo que toma os valores vi1, vi2, …; Pr[a] refere-se à probabilidade do evento A ocorrer e Pr[A|B] refere-se á probabilidade do evento A ocorrer condicionado pelo evento B.

5. Descrição do Problema

Nós associamos o Inverno aos dias de frio, de chuva e algum vento e, por outro lado, o Verão aos dias de calor, pouco húmidos e apenas com uma aragem de vento.

O conjunto de dados no qual decidi aplicar a técnica de clustering incide nas análises climatéricas referentes ao ano de 2003 em Faro.

As medições de vento, precipitação e temperatura efectuadas ao longo do dia permitiram ao Instituto Superior de Agronomia tirar médias diárias e, com as mesmas,

(10)

10 fazer a respectiva média mensal ao longo do ano. Assim sendo , o conjunto dos dados é composto por 12 objectos, sendo que cada um tem 4 atributos. Os objectos correspondem aos 12 meses do ano, e os atributos utilizados foram: o nome do mês; e as médias mensais para o vento, a precipitação e a temperatura.

6. Preparação dos dados

Os dados foram retirados de um artigo do Instituto de Conservação da Natureza e da Biodiversidade [15].

Primeiramente, coloquei os dados numa tabela, pois estavam espalhados ao longo de todo o relatório.

Tabela 2

Conjunto de dados

Mês Precipitação Vento Temperatura

Janeiro 73.6 13.4 12.4 Fevereiro 70.9 14.6 12.7 Março 45.1 14 13.8 Abril 27.7 14.6 15.3 Maio 19.6 14.6 17.3 Junho 10.9 13.5 21 Julho 1.4 12.9 23.8 Agosto 3.9 12.4 23.9 Setembro 11.9 12.2 22.1 Outubro 58.6 12.2 17.9 Novembro 86.2 12.5 15.1 Dezembro 87.9 13.1 13.1

Os dados serão analisados no WEKA. O WEKA tem um formato de ficheiro próprio, o arff [16]; isto é, tem um cabeçalho que contém o nome da relação e a lista dos atributos da relação. A título de exemplo:

(11)

11 E depois tem o conjunto dos dados. Cada objecto é escrito numa linha e os atributos são separados por vírgulas. A título de exemplo:

Posto isto, a estrutura do ficheiro para dar como entrada de dados do WEKA será: @RELATION CLIMA

@ATTRIBUTE MES NUMERIC

@ATTRIBUTE PRECIPITACAO NUMERIC @ATTRIBUTE VENTO NUMERIC

@ATTRIBUTE TEMPERATURA NUMERIC @DATA 1,73.6,13.4,12.4 2,70.9,14.6,12.7 3,45.1,14,13.8 4,27.7,14.6,15.3 5,19.6,14.6,17.3 6,10.9,13.5,21 7,1.4,12.9,23.8 8,3.9,12.4,23.9 9,11.9,12.2,22.1 10,58.6,12.2,17.9 11,86.2,12.5,15.1 12,87.9,13.1,13.1 @DATA 5.1,3.5,1.4,0.2,Iris-setosa 4.9,3.0,1.4,0.2,Iris-setosa 4.7,3.2,1.3,0.2,Iris-setosa 4.6,3.1,1.5,0.2,Iris-setosa 5.0,3.6,1.4,0.2,Iris-setosa 5.4,3.9,1.7,0.4,Iris-setosa 4.6,3.4,1.4,0.3,Iris-setosa 5.0,3.4,1.5,0.2,Iris-setosa 4.4,2.9,1.4,0.2,Iris-setosa 4.9,3.1,1.5,0.1,Iris-setosa % 1. Title: Iris Plants Database %

% 2. Sources:

% (a) Creator: R.A. Fisher

% (b) Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov) % (c) Date: July, 1988

%

@RELATION iris

@ATTRIBUTE sepallength NUMERIC @ATTRIBUTE sepalwidth NUMERIC @ATTRIBUTE petallength NUMERIC @ATTRIBUTE petalwidth NUMERIC

@ATTRIBUTE class {Iris-setosa,Iris-versicolor,Iris-virginica}

(12)

12

7. Análise dos dados

Os dados serão analisados utilizando o programa WEKA que o professor sugeriu. O algoritmo que decidi utilizar é um dos que vem no pacote, por defeito, do WEKA, e um acerca do qual encontrei mais referências enquanto efectuei a minha pesquisa em livros e na internet: o K-Means.

7.1 Preparação (Preprocess)

Numa primeira fase abre-se o ficheiro arff criado para o efeito e podemos desde logo tirar alguns valores dos vários atributos de cada mês. De relembrar que os dados correspondem ao ano de 2003.

Tabela 3

Preprocess – Valores observados

Estatística Precipitação Vento Temperatura

Mínimo 1.4 12.2 12.4

Máximo 87.9 14.6 23.9

Mean 41.475 13.333 17.367

Desvio Padrão 32.829 0.937 4.335

O WEKA tem o poder de mostrar visualmente como estão dispostos os valores em todas as funcionalidades de que se dispõe no programa. No Preprocess conseguimos observar como estão distribuídos os valores, tendo em conta os dados estatísticos da tabela anterior:

Desta primeira análise dos dados, no que diz respeito à precipitação, podemos concluir que esta está bem dividida ao longo do ano, pois temos seis meses que se

(13)

13 encontram entre o valor mínimo e o valor central e outros 6 meses entre o valor central e o máximo.

Quanto ao vento podemos observar que existem cinco meses em que faz mais vento (os meses encontram-se acima do valor central) e sete meses em que a força do vento é menor, pois encontram-se abaixo do valor central.

Já com a temperatura não se passa o mesmo que com a precipitação e o vento, em que tínhamos mais ou menos o mesmo número de meses, acima ou abaixo do valor central, durante o ano. A temperatura teve quatro meses acima do valor central e oito meses abaixo do valor central.

7.2 Clustering

Uma vez que estamos a falar de clima ao longo de um ano parece-me que faz algum sentido fazer clustering para vários valores de k e daí tentar tirar alguma conclusão.

Irei correr o algoritmo três vezes com k=2, k=3 e k = 4. K é o número de clusters que irei ter ao fim de correr o algoritmo.

Na visualização cada cor corresponderá a um cluster. No final de cada visualização direi a que meses correspondem cada cluster.

(14)

14 7.2.1 Para k = 2

O output do clustering é o seguinte:

Precipitação

Cluster0 – Janeiro, Fevereiro, Março, Abril, Maio,

Cluster1 – Junho, Julho, Agosto, Setembro, Outubro, Novembro, Dezembro

São notórios os clusters que se formam se dividirmos os meses do ano em dois clusters. Temos praticamente metade do ano de um lado e a outra metade do outro.

=== Run information === Scheme: weka.clusterers.SimpleKMeans -N 2 -S 10 Relation: CLIMA Instances: 12 Attributes: 4 MES PRECIPITACAO VENTO TEMPERATURA

Test mode: evaluate on training data === Model and evaluation on training set === kMeans

======

Number of iterations: 3

Within cluster sum of squared errors: 3.2673293558347813 Cluster centroids: Cluster 0 Mean/Mode: 9 37.2571 12.6857 19.5571 Std Devs: 2.1602 39.055 0.4947 4.2762 Cluster 1 Mean/Mode: 3 47.38 14.24 14.3 Std Devs: 1.5811 24.5199 0.5367 2.0261 Clustered Instances 0 7 ( 58%) 1 5 ( 42%)

(15)

15 Vento

Cluster0 – Janeiro, Fevereiro, Março, Abril, Maio

Cluster1 – Junho, Julho, Agosto, Setembro, Outubro, Novembro, Dezembro

Quanto ao vento observa-se a mesma coisa. Consegue-se verificar, sem nenhuma dúvida, que os meses mais ventosos de 2003 foram os cinco primeiros meses do ano, seguindo-se meses com pouco índice de vento.

Temperatura

Cluster0 – Janeiro, Fevereiro, Março, Abril, Maio

Cluster1 – Junho, Julho, Agosto, Setembro, Outubro, Novembro, Dezembro

Se optarmos por ter uma visualização da temperatura, observamos que a temperatura vai subindo até ao mês de Junho e ganha o seu pico nos meses de Julho e Agosto, voltando, depois, a baixar.

Clusters

(16)

16 7.2.2 Para k = 3

O output do clustering é o seguinte:

Precipitação

Cluster0 – Janeiro, Fevereiro, Março, Abril, Maio

Cluster1 – Junho, Julho, Agosto, Setembro

Cluster2 – Outubro, Novembro, Dezembro

A precipitação dividida em três partes dá mais ou menos quatro meses para cada parte. Podemos então dizer que as partes estão quase bem divididas. Temos um cluster até ao mês de Maio, a partir de Junho, quando o tempo começa a ficar mais quente,

=== Run information === Scheme: weka.clusterers.SimpleKMeans -N 3 -S 10 Relation: CLIMA Instances: 12 Attributes: 4 MES PRECIPITACAO VENTO TEMPERATURA

Test mode: evaluate on training data === Model and evaluation on training set === kMeans

======

Number of iterations: 3

Within cluster sum of squared errors: 1.2498881304397282 Cluster centroids: Cluster 0 Mean/Mode: 7.5 7.025 12.75 22.7 Std Devs: 1.291 5.17 0.5802 1.4024 Cluster 1 Mean/Mode: 3 47.38 14.24 14.3 Std Devs: 1.5811 24.5199 0.5367 2.0261 Cluster 2 Mean/Mode: 11 77.5667 12.6 15.3667 Std Devs: 1 16.4476 0.4583 2.4111 Clustered Instances 0 4 ( 33%) 1 5 ( 42%) 2 3 ( 25%)

(17)

17 temos outro, (como se irá verificar mais à frente na análise do gráfico da temperatura). Depois em Outubro dá-se o início de mais outro cluster.

Vento

Cluster0 – Janeiro, Fevereiro, Março, Abril, Maio

Cluster1 – Junho, Julho, Agosto, Setembro

Cluster2 – Outubro, Novembro, Dezembro

O vento tem exactamente os mesmo clusters que a precipitação. Os primeiros cinco meses do ano são mais ventosos, mas chegada a altura do Verão, o vento fica menos forte/intenso. Quando o Outono começa inicia-se outro cluster. Também podemos verificar que o mês de Dezembro é semelhante ao mês de Janeiro.

Temperatura

Cluster0 – Janeiro, Fevereiro, Março, Abril, Maio

Cluster1 – Junho, Julho, Agosto, Setembro

Cluster2 – Outubro, Novembro, Dezembro

A temperatura vem confirmar o que foi observado nos gráficos anteriores. O ano de 2003 ficaria quase bem dividido, se o dividíssemos em três clusters. Os clusters são os mesmos que para os gráficos anteriores.

(18)

18 Clusters

7.2.3 Para k = 4

O output do clustering é o seguinte: === Run information === Scheme: weka.clusterers.SimpleKMeans -N 4 -S 10 Relation: CLIMA Instances: 12 Attributes: 4 MES PRECIPITACAO VENTO TEMPERATURA

Test mode: evaluate on training data === Model and evaluation on training set === kMeans

======

Number of iterations: 3

Within cluster sum of squared errors: 0.8526871797667125 Cluster centroids: Cluster 0 Mean/Mode: 8 5.7333 12.5 23.2667 Std Devs: 1 5.4848 0.3606 1.0116 Cluster 1 Mean/Mode: 5 19.4 14.2333 17.8667 Std Devs: 1 8.4018 0.6351 2.8919 Cluster 2 Mean/Mode: 11 77.5667 12.6 15.3667 Std Devs: 1 16.4476 0.4583 2.4111 Cluster 3 Mean/Mode: 2 63.2 14 12.9667 Std Devs: 1 15.7331 0.6 0.7371 Clustered Instances 0 3 ( 25%) 1 3 ( 25%) 2 3 ( 25%) 3 3 ( 25%)

(19)

19 Precipitação

Cluster0 – Janeiro, Fevereiro, Março

Cluster1 – Abril, Maio, Junho

Cluster2 – Julho, Agosto, Setembro

Cluster3 – Outubro, Novembro, Dezembro

Com o ano dividido em quatro clusters podemos constatar que em 2003, existiram quatro períodos distintos entre si. Os meses de menor precipitação foram Julho, Agosto e Setembro.

Vento

Cluster0 – Janeiro, Fevereiro, Março

Cluster1 – Abril, Maio, Junho

Cluster2 – Julho, Agosto, Setembro

Cluster3 – Outubro, Novembro, Dezembro

Fevereiro, Abril e Maio foram os meses em que a força do vento mais se fez sentir. Depois em Setembro, Outubro e Novembro deu-se o oposto, ou seja, quase que não houve vento.

Temperatura

Cluster0 – Janeiro, Fevereiro, Março

Cluster1 – Abril, Maio, Junho

Cluster2 – Julho, Agosto, Setembro

(20)

20 Os dois primeiros e os dois últimos meses do ano foram os meses em que tivemos as temperaturas mais baixas, Sendo que o pico foi atingido, como era de esperar, em Julho e Agosto.

Clusters

7.3 “Re-clustering”

O termo que estou a utilizar para descrever este ponto do relatório pode não existir, mas o que quero dizer com isto é que fiz de novo o clustering aos dados.

Não fiquei contente com a separação dos clusters, pois não me fazia sentido não constarem no mesmo cluster, por exemplo, meses como Janeiro e Dezembro. Então fiz o clustering mas com o atributo mês a não entrar nas contas do K-Means.

Os valores dos atributos visualizados para a precipitação, o vento e a temperatura são os mesmos que no ponto anterior, por isso vou apenas mostrar os resultados dos clusters obtidos com este novo clustering.

Com base nos valores do ponto 7.2, em que se pode ver a precipitação, o vento e a temperatura, as conclusões retiradas dos clusters são as apresentadas nos pontos seguintes:

7.3.1 Para k = 2

Cluster0 – Junho, Julho, Agosto, Setembro, Outubro

Cluster1 – Janeiro, Fevereiro, Março, Abril, Maio, Novembro, Dezembro

(21)

21 O ano de 2003 teve os primeiros meses do ano até Maio incluídos num cluster e de Junho a Outubro noutro cluster. Novembro e Dezembro pertenceram ao primeiro cluster.

Daqui podemos concluir que ao longo do ano, de um modo geral, o cluster0 tem os meses mais quentes, menos ventosos e húmidos.

7.3.2 Para k = 3

Cluster0 – Junho, Julho, Agosto, Setembro

Cluster1 – Fevereiro, Março, Abril, Maio

Cluster2 – Janeiro, Outubro, Novembro, Dezembro

Se dividirmos o ano em três grupos de meses, verificamos que temos o mesmo número em cada grupo.

7.3.3 Para k = 4

Cluster0 – Junho, Julho, Agosto, Setembro

Cluster1 – Março, Abril, Maio

Cluster2 – Outubro, Novembro

Cluster3 – Janeiro, Fevereiro, Dezembro

Esta era a análise pela qual eu estava à espera. Não no sentido de saber o que iria dar, mas porque verifiquei que talvez possa ter errado no ponto 7.2, quando coloquei o número do mês nas contas do K-Means para analisar os dados.

Temos aqui quatro clusters quase bem distribuídos. Mas ao contrário da primeira análise do ponto 7.2 em que os meses estavam agrupados de seguida no mesmo cluster,

(22)

22 esta análise, na minha opinião, é a correcta, pois tem em conta apenas os atributos de precipitação, vento e temperatura, obtendo assim uma distribuição “verdadeira” dos meses.

Sabendo que as estações do ano estão distribuídas da seguinte forma: Tabela 4

Estações do ano

Estação Data Início Primavera 20 de Março Verão 20 de Junho Outono 22 de Setembro Inverno 21 de Dezembro

Então, esta distribuição dos clusters quase que corresponde às estações do ano. Poderíamos atribuir a cada cluster uma estação do ano. O cluster0 seria o Verão, o cluster1 a Primavera, o cluster2 o Outono e, por fim, o cluster3 o Inverno.

8. Conclusões e Trabalho Futuro

Consegui efectuar o clustering a um conjunto de dados. Esse conjunto de dados era pequeno, mas deu para perceber e compreender a ideia geral do que é o clustering. Só à segunda tentativa é que entendi um erro que tinha cometido na tentativa anterior. Na primeira tentativa estava a obter sempre os meses seguidos, começando em Janeiro o mesmo cluster.

O ano de 2003 não foi um ano fora do normal, pois teoricamente o ano tem quatro períodos distintos, e isso foi confirmado no segundo clustering que fiz com k = 4.

Não foi muito fácil encontrar este tipo de dados estatísticos.

Para trabalho futuro seria interessante obter mais dados de anos anteriores e posteriores a 2003 e ter uma quantidade mais ou menos razoável de dados para se poder comparar a evolução dos clusters em cada ano.

As partes interessantes deste trabalho futuro poderiam ser, por exemplo, concluir se na zona da Ria Formosa a temperatura está a aumentar e a precipitação a diminuir (resultante do efeito de estufa que se possa fazer sentir na zona), ou ainda utilizar os dados para poder prever os anos vindouros.

(23)

23

9. Referências

[1] DATA MINING – Descoberta de Conhecimento em Base de Dados, M Santos Carla Sousa Azevedo,

[2] Data Mining Techniques – For Marketing, Sales, and Customer Support, Michael J. A. Berry, Gordon Linoff

[3] Patricio Serendero. Apontamentos de aula. Acedido a 29 de Março de 2008, in

http://w3.ualg.pt/~pserende/Data_Mining/Apresenta%E7%E3o_Data_Mining.ppt .

[4] Apache Software Fundation (2007). What is Apache Derby. Acedido a 7 de Fevereiro de 2008, in http://db.apache.org/derby/.

[5] Intel®, Moore's Law Made real by Intel® innovation. Acedido a 2 de Junho de 2008, in http://www.intel.com/technology/mooreslaw/index.htm

[6] Data Mining: Concepts and Techniques, Jiawei Han, Micheline Kamber [7] Principles of Data Mining, David Hand, Heikki Mannila, Padhraic Smyth

[8] Liga Portuguesa de Futebol Profissional, Estatísticas de jogos. Acedido a 5 de Junho de 2008, in http://www.lpfp.pt/futebol/Pages/Estatisticas.aspx

[9] Patricio Serendero, Clustering. Acedido a 6 de Junho de 2008, in

http://w3.ualg.pt/~pserende/Data_Mining/DM_PDF/Clustering.pdf

[10] Patricio Serendero, Dados e o seu domínio. Acedido a 6 de Junho de 2008, in

http://w3.ualg.pt/~pserende/Data_Mining/DM_PDF/V)%20Os%20dados%20e%2

0o%20seu%20dominio.pdf

[11] Microsoft ®, Rafal Lukawiecki – Introduction to Data Mining. Visualizado a 8 de Junho de 2008, in

http://www.microsoft.com/portugal/technet/spotlight/sessionh.aspx?videoid=865 [12] Ian H. Witten and Eibe Frank (2005) "Data Mining: Practical machine learning

tools and techniques", 2nd Edition, Morgan Kaufmann, San Francisco, 2005. [13] WEKA The University of Waikato, Machina Learning Project. Acedido a 18 de

Junho, in http://www.cs.waikato.ac.nz/~ml/index.html

[14]The EM Algorithm for Unsupervised Clustering. Acedido a 22 de Junho, in

http://grb.mnsu.edu/grbts/doc/manual/Expectation_Maximization_EM.html

[15] Revisão do Plano de Ordenamento do Parque Natural da Ria Formosa. Acedido a 26 de Junho de 2008, in

(24)

24 [16] Attribute-Relation File Format (ARFF) Acedido a 27 de Junho de 2008, in

http://www.cs.waikato.ac.nz/~ml/weka/arff.html

[17] 3.11 COBWEB. Acedido a 28 de Junho de 2008, in

Referências

Documentos relacionados

O trabalho utiliza, como base, a proposta de Sandra Ramalho e Oliveira, em seu artigo “Imagem também se lê” (2006) para a leitura de imagens, iniciando pelo escaneamento

É requerido um despojamento das obras da carne e um revestimento do fruto do Espírito Santo, e isto não é feito apenas por palavras, mas pela efetiva operação do

BOERO (1967), mesmo sem fazer referências a búfalos, afirma que a época do ano mais favorável à apresentação da As- pergilose nos animais domésticos, na Argentina, é o final do

A) Endócrino: endo (interno; que não entra em contato com o exterior); produzido por determinado órgão, conduzido pelo sangue e age a distância;

Quem não pode com o pote, não pega na rodilha..

Sua emergência indiciaria o reconhecimento de uma diferença no fluxo do dizer, em que o sujeito, buscando no discurso do Outro o apoio e a sustentação de seu próprio dizer, retoma

O selo é oferecido pela ABIC (Associação Brasileira da Indústria do Café) às torrefadoras que são aprovadas pela avaliação de qualidade.. A auditoria foi realizada

75.618 deste Ofício, com saldo devedor de responsabilidade de V.Sa., venho INTIMÁ-LO(A) a efetuar o pagamento das prestações vencidas e as que se venceram até a data do pagamento,