• Nenhum resultado encontrado

Apesar do trabalho realizado ser promissor, surgem ainda alguns pontos que podem a ser aperfeiçoados.

Como trabalhos futuros, destaca-se a fórmula da previsão de valores que poderá ser melhorada em termos de eficácia da metodologia utilizada, usando os valores das autocorrelações parciais para determinar o peso dos períodos antecessores, ao invés de ser o peso total no período anterior.

Outra possível melhoria seria a avaliação da semelhança de séries com base em mais do que uma métrica. No caso apresentado, a métrica adicional a ter em conta poderia ser a quantidade de peças em stock, visto que este número pode influenciar o número de peças vendidas.

Análise exploratória de hierarquias em base de dados multidimensionais 78 Ainda como melhoria surge a possibilidade de identificar e anular os picos não sistémicos, tanto positivos como negativos, como nos exemplos apresentados a ocorrência das Páscoas. Este melhoramento poderá ser introduzido tentando eliminar esse efeito nos dados ou aplicando uma variação do DTW, com uma janela de passos com um leque mais alargado. Além da comparação da subsérie, este problema também será visível na altura da previsão, pois o valor de séries anteriores vai empolar ou deflacionar, conforme o sentido da variação dos dados.

O modelo que usa a subsérie dos descendentes mais semelhantes à série principal não apresentou os valores de precisão esperados, o que não deve constituir, desde já, motivo para descartar esta ideia. O método poderá ser melhorado procurando alguns dos descendentes que sejam os centróides de alguns agrupamentos, ou obter um determinado número de descendentes mais semelhantes. Com este número de subséries mais alargado - no método experimentado só havia uma subsérie -, mas mesmo assim menor que o número de descendentes à partida, obtinham-se os valores da série principal, com base numa média aritmética ou numa ponderação.

Análise exploratória de hierarquias em base de dados multidimensionais 79

6 Bibliografia

Agrawal, R., Faloutsos, C. e Swami, A. (1993). “Efficient Similarity Search in Sequence Databases”, Proceedings of the 4th Int'l Conference on Foundations of Data Organization and Algorithms, pp. 69-84, Chicago.

Akaike, H. (1972), “Information theory and an extension of the maximum likelihood principle”, In B. Petrov, & F. Csáki (Editores), 2nd International Symposium on Information Theory, Vol. 1, pp. 267-281, Budapeste: Akadémia Kiadó.

Akaike, H. (1974), “A new look at the Statistical Model Identification”, IEEE Transaction on Automatic Control, Vol. AC-19, pp. 716-723, IEEE.

Akaike, H. (1981), “Classic Citation - A new look at the statistical model identification”, This week's citation classic , Vol. 51, pp. 42.

Annen, K. (2004), “Web:Reg correlogram add-in”, http://www.web-reg.de, acedido em 10 de Dezembro de 2011.

Arroyo, J. e Maté, C. (2009), “Forecasting histogram time series with k-nearest”, International journal of forecasting , Vol. 25, pp. 192-207.

Berndt, D. e Clifford, J. (1994), “Using dynamic time warping to find patterns in time series”, AAAI-94 Workshop on Knowledge Discovery in Databases (KDD-94), pp. 359- 370, Seattle, Washington.

Box, G. e Jenking, G. (1970), Time series analysis: Forecasting and control, San Francisco: Holfrn-Day.

Box, G. e Pierce, D. (1970), “Distribution of Residual Autocorrelations in Autoregressive-Integrated Moving Average Time Series Models”, Journal of the American Statistical Association , Vol. 65, pp. 1509–1526.

Chen, Y., Dong, G., Han, J., Wah, B. e Wang, J. (2002), “Multi-Dimensional Regression Analysis of Time-Series Data Streams”, Proceedings of the 28th VLDB conference, pp. 323-334, Hong Kong, China.

Chen, Y., Dong, G., Han, J., Pei, J., Wah, B. e Wang, J. (2006 a)), “Regression Cubes with lossless compression and aggregation”. IEEE Trans. Knowledge and Data Engineering , Vol. 18, Nº 12, pp. 1585-1599.

Chen, B.-C., Chen, L., Lin, Y. e Ramakrishnan, R. (2005), “Prediction Cubes”, Proceeding of the 31st International Conference on Very Large Data Bases, pp. 982- 993. Trondheim, Norway: ACM Press.

Chen, B.-C., Ramakrishnan, R., Shavlik, J. e Tamma, P. (2006 b)), “Bellwether Analysis: Predicting Global Aggregates from Local Regions”, VLDB '06 Proceedings of

Análise exploratória de hierarquias em base de dados multidimensionais 80 the 32nd international conference on Very large data bases, pp. 655-666, Seul, Coreia: ACM Press.

Cheng, S. (1998), “Statistical Approaches to Predictive Modeling in Large Databases”, Tese de Mestrado, British Columbia, Canadá: Simon Fraser University.

deLeeuw, J. (1992), “Introduction to Akaike (1973) Information theory and Extension of the Maximum Likelihood Principle”, S. Kotz, & N. Johnson (editores), Breakthroughs in Statistics Volume 1. Foundations and Basic Theory, Vol. 1, pp. 610- 624, New York: Springer-Verlag.

Duda, R., Hart, P. e Stork, D. (1996), Pattern Classification and Scene Analysis: Part I Pattern Classification (2ª ed.), John Wiley & Sons, Inc.

Faloutsos, C., Ranganathan, M. e Manolopoulos, Y. (1994), “Fast Subsequence Matching in Time-Series Databases”. In Proceedings of the 1994 ACM SIGMOD International Conference on Management of Data, pp. 419-429, Minneapolis: ACM. Ferreira, N., e Gama, J. (2012), “Análise exploratória de hierarquias em base de dados multidimensionais”, Faculdade de Economia da Universidade do Porto, Porto.

Han, J., Cai, Y. e Cercone, N. (1993), “Data-driven discovery of quantitative rules in relational databases”, Tran. on Knowledge and Data Engineering. 5, pp. 29-40, IEEE. Han, J. e Fu, Y. (1995), “Discovery of multiple-level association rules from large databases”, Proc. 1995 Int. Conf. Very Large Data Bases (VLDB'95), pp. 420-431, Zurich, Switzerland.

Han, J. e Kamber, M. (2006), Data Mining Concepts and Techniques (2ª ed.), Morgan Kaufmann Publishes.

Hardan, D., Veerman, E. e Rabeler, C. (2007), Microsoft SQL Server 2005 - Analysis Services Many-to-Many Dimensions: Query perfomrance optimization techninque, Microsoft.

Harinarayan, V., Rajaraman, A. e Ullman, J. (1996), “Implementing data cubes efficiently”, Proc. 1996 ACM-SIGMOD Int. conf. Management of data, pp. 205-216, Montreal, Canada: ACM.

Hyndman, R. (2001), “ARIMA processes”, Rob J Hyndman web page,

http://robjhyndman.com/papers/ARIMA.pdf, acedido em 01 de Junho de 2012.

Hyndman, R. e Khandakar, Y. (2008), “Automatic time series forecasting: the forecast package for R”. Journal of Statistical Software , Vol. 27, Nº 3.

Imielinski, T., Khachiyan, L. e Abdulghani, A. (2002). “Cubegrades: Generalization Association Rules”, Data Mining and Knowledge Discovery, Vol. 6, pp. 219-258, Netherlands: Kluwer Academic Publishers.

Análise exploratória de hierarquias em base de dados multidimensionais 81 International Business Machines (IBM) Corp. (s.d.), “Cognos”, IBM Cognos Official web page, http://www-01.ibm.com/software/analytics/cognos/, acedido em 15 de Junho de 2012.

Kamber, M., Winstone, L., Gong, W., Cheng, S. e Han, J. (1997), “Generalization and Decision Tree Induction: Efficient Classification in Data Mining”, Proc. of 1997 Int'l Workshop on Research Issues on Data Engineering (RIDE'97), pp. 111-120, Birmingham, England.

Keogh, E. e Pazzani, M. (1999), “Relevance feedback retrieval of time series data”, SIGIR '99 Proceedings of the 22nd annual international ACM SIGIR conference on Research and development in information retrieval, pp. 183 – 190, Nova York: ACM. Keogh, E. e Pazzani, M. (2000), “Scaling up dynamic time warping for datamining applications”, 6th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 285-289, Boston: ACM.

Keogh, E. e Pazzani, M. (2001), “Derivative Dynamic Time Warping”, First SIAM International Conference on Data Mining, Vol. 1, Chicago, IL USA.

Kruskal, J. e Liberman, M. (1983), “The Symmetric Time-Warping Problem: From Continuous to Discrete”, D. Sankoff, & J. Kruskal (Editores), Time Warps, String Edits, and Macromolecules: the theory and practice of sequence comparison, pp. 125 – 160, Reading, Mass.: Addison-Wesley.

Kullback, S. e Leibler, R. (1951), “On Information and Sufficiency”, Annals of Mathematical Statistics. Vol. 22, pp. 79–86, Institute of Mathematical Statistics.

Lo, E., Kao, B., Ho, W.-S., Lee, S., Chui, C. e Cheung, D. (2008), “OLAP on Sequence Data”, SIGMOD ’08: Proceedings of the 2008 ACM SIGMOD international conference on Management of data, pp. 649-660, New York, NY, USA.

Lu, Y. (1997), “Concept Hierarchy in Data Mining: Specification, Generation and Implementation”, Tese de Mestrado, Simon Fraser University, School of Computing Sience.

Makridakis, S., Wheelwright, S. e Hyndman, R. (1998). Forecasting: Methos and Applications (3ª ed.), John Wiley & Sons, Inc.

Microsoft corporation. (s.d.), “Sql Server”, Microsoft Sql Server official web site, http://www.microsoft.com/sqlserver/en/us/default.aspx, acedido em 15 de Junho de 2012.

MicroStrategy Inc. (s.d.), “MicroStrategy”, MicroStrategy official web site, http://www.microstrategy.com/, acedido em 15 de Junho de 2012.

Análise exploratória de hierarquias em base de dados multidimensionais 82 Muller, M., Mattes, H. e Kurth, F. (2006), “An efficient multiscale approach to audio synchronization”, In Proceedings of the 6th International Conference on Music Information Retrieval, pp. 192-197.

Niels, R. (2004), “Dynamic Time Warping - An intuitive way of handwriting recognition”, Tese de Mestrado, Radboud University Nijmegen, Department of Artificial Intelligence.

Oracle and Hyperion. (s.d.), “Oracle and Hyperion”, Oracle official web site - Hyperion acquisition, http://www.oracle.com/us/corporate/Acquisitions/hyperion/index.html, acedido em 15 de Junho de 2012.

Oracle. (s.d.), “Oracle Business Intelligence”, Oracle Business Intelligence official web site, http://www.oracle.com/us/solutions/business-analytics/business- intelligence/index.html, acedido em 15 de Junho de 2012.

Palpanas, T., Koudas, K. e Mendelzon, A. (2005), “Using Datacube Aggregates for Approximate Querying and Deviation Detection”, IEEE Transactions on Knowledge and Data Engineering , Vol. 17, Nº 11, pp. 1465-1477.

Park, S., Lee, D. e Chu, W. (1999), “Fast retrieval of similar subsequences in long sequence databases”, In 3 rd IEEE Knowledge and Data Engineering Exchange Workshop, pp. 60-67, IEEE.

R development core team. (s.d.), “The Comprehensive R Archive Network”, http://CRAN.R-project.org, acedido em 10 de Maio de 2012.

Rabaséda, S., Boussaid, O., Niemczuk, A. e Messaoud, R. (2008), “Prédiction dans les cubes de données OLAP”, Investigação, Université de Lyon, Laboratoire ERIC.

Rafiei, D. e Mendelzon, A. (1997), “Similarity-Based Queries for Time Series Data”, In Proceedings of the 1997 ACM SIGMOD International Conference on Management of Data, pp. 13-24, Tucson, Arizona: ACM.

Rakthanmanon, T., Campana, B., Mueen, A., Batista, G., Westover, B., Zu, Q., et al. (2012), “Searching and Mining Trillions of Time Series Subsequences under Dynaic Time warping”, The 18th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, pp. 262-270, Pequim, China: ACM.

Ramakrishnan, R. e Chen, B.-C. (2007), “Exploratory mining in cube space”, Data mining and Knowledge Discovery , Vol. 15, 29-54.

Ramakrishnan, R. e Gehrke, J. (2000). Database Management Systems (2ª ed.). McGraw-Hill.

Análise exploratória de hierarquias em base de dados multidimensionais 83 Sakoe, H. e Chiba, S. (1978), “Dynamic programming algorithm optimization for spoken word recognition”, Trans. Acoustics, Speech and Signal Proc. ASSP-26, pp. 159-165, IEEE.

Salvador, S. e Chan, P. (2007), “FastDTW: Toward Accurate Dynamic Time Warping in Linear Time and Space”, Intelligence Data Analysis , Vol. 11, Nº 5, pp. 561-580. Sarawagi, S., Agrawal, R. e Megido, N. (1998), “Discovery-driven Exploration of OLAP Data Cubes”, Proceedings of the 6th International Conference on Extending Database Technology: Advances in Database Technology, pp. 168-182, Valência, Espanha: Springer-Verlang.

Schmill, M., Oates, T. e Cohen, P. (1999), “Learned models for continuous planning”, Proceedings of Uncertainty 99: The Seventh International Workshop on Artificial Intelligence and Statistics, pp. 278-282, Florida, USA: Morgan Kaufmann.

Shumway, R. e Stoffer, D. (s.d.), “Time Series Analysis and Its Applications: With R Examples”, http://www.stat.pitt.edu/stoffer/tsa2, acedido em 26 de Janeiro de 2012. Souza, R. e Carvalho, F. (2004), “Clustering of interval data based on city–block distances”, Pattern Recognition Letters , Vol. 25, pp. 353-365.

Valchos, M., Kollios, G. e Gunopulos, D. (2002), “Discovering Similar Multidimensional Trajectories”, ICDE '02 Proceedings of the 18th International Conference on Data Engineering , Washington: IEEE.

Wu, Y., Agrawal, D. e Abbadi, A. (2000), “A comparison of DFT and DWT based similarity search in time-series databases”, CIKM '00 Proceedings of the ninth international conference on Information and knowledge management, pp. 488-495, Nova York: ACM.

Zinke, A. e Mayer, D. (2006), “Iterative Multi Scale Dynamic Time Warping”, Computer Graphics Technical Reports - CG-2006/1 ,Vol. 1.

Análise exploratória de hierarquias em base de dados multidimensionais 84

Anexo A

Código DTW implementado

Sub DTW()

Dim numeroCol(1 To 10), numeroColPai(1 To 10) As Integer Dim numeroLin As Integer

Dim serieComparada(1 To 10, 1 To 60) As Double Dim serieAComparar(1 To 10, 1 To 60) As Double Dim lin, col, colPai As Integer

Dim custo As Double

'Obtem o numero da unidade pai na dimensão tempo

numeroLin = Worksheets("Dados").Range("A2").End(xlDown).Row For lin = 3 To numeroLin

'Quantos periodos de tempo tem a unidade pai da dimensão tempo

numeroCol(lin)=Worksheets("Dados").Range(Cells(lin,1).Address).End(xlToRight).Column numeroColPai(lin) =Worksheets("Dados").Range(Cells(lin+7,1).Address).End(xlToRight).Column

‘Preencher o array com os dados das séries filho ou a comparar For col = 2 To numeroCol(lin)

serieAComparar(lin - 2, col - 1) = Worksheets("Dados").Range(Cells(lin, col).Address).Value

Next col

‘Preencher o array com os dados da série pai ou que vai ser comparada For colPai = 2 To numeroCol(lin)

serieComparada(lin - 2, col - 1) = Worksheets("Dados").Range(Cells(lin + 7, col).Address).Value

Next colPai

‘Calculo das distancias

custo = DTWDistance(serieAComparar, serieComparada, lin - 2, col – 2, colPai - 2) ‘Colocar as distancias nas células da página distâncias do excel

Worksheets("Distancia").Range(Cells(lin, 1).Address).Value = Worksheets("Dados").Range(Cells(lin,

1).Address).Value

Worksheets("Distancia").Range(Cells(lin, 2).Address).Value = custo Next lin

MsgBox ("Distancias calculadas") End Sub

Function DTWDistance(ByRef s() As Double, ByRef t() As Double, ByVal lin As Integer, ByVal col As Integer, ByVal colPai As Integer) As Double

Dim aDTW(0 To 60, 0 To 60) As Double Dim i, j As Integer

Dim cost As Double

Dim aFilho(1 To 60), aPai(1 To 60) As Double ‘Preencher o array dos dados pai

For i = 1 To colPai aPai(i) = t(lin, i) Next i

‘Preencher o array dos dados filho For i = 1 To col

aFilho(i) = s(lin, i) Next i

'tamanho do array filho For i = 1 To col

aDTW(1, i) = 9999999 Next i

'tamanho do array pai For i = 1 To colPai

aDTW(i, 1) = 9999999 Next i

‘Valor da distancia no ponto inicial deve ser zero. aDTW(1, 1) = 0

For i = 2 To col For j = 2 To colPai

Análise exploratória de hierarquias em base de dados multidimensionais 85

cost = CalcDistanciaABS(aFilho(i), aPai(j))

‘Obtem o menor custo das posições adjacentes seguintes

aDTW(i, j) = cost + Min(Min(aDTW(i - 1, j), aDTW(i, j - 1)), aDTW(i - 1, j - 1)) Next j

Next i

DTWDistance = aDTW(col, colPai) End Function

‘Calculo da distancia euclidiana com uma única métrica, valor absoluto

Function CalcDistanciaABS(ByVal dFilho As Double, ByVal dPai As Double) As Double CalcDistanciaABS = Abs(dFilho - dPai)

End Function

‘Função que obtem o minimo entre dois numeros

Public Function Min(ByVal d1 As Double, ByVal d2 As Double) As Double Min = d1

If d2 < d1 Then Min = d2