MÉTODOS QUANTITATIVOS PARA CIÊNCIA DA COMPUTAÇÃO EXPERIMENTAL Pedro Henrique Bragioni Las Casas Pedro.lascasas@dcc.ufmg.br Apresentação baseada nos slides originais de Jussara Almeida e Virgílio Almeida
Programa Ciência da Computação Experimental e o Método Científico Conceitos estatísticos Caracterização de cargas Comparando Sistemas Usando Dados de Amostragem e Intervalos de Confiança
Programa Ciência da Computação Experimental e o Método Científico Conceitos estatísticos Caracterização de cargas Comparando Sistemas Usando Dados de Amostragem e Intervalos de Confiança
Erro Todo processo experimental está sujeito a erro Erros são ruídos nos valores medidos
Tipos de erros Erros sistemáticos Resultado de um problema experimental Tipicamente produz variações tendenciosas lentas ou padrão tendencioso constantes Controlado através da experiência/habilidade do experimentador Exemplos Mudança de temperatura pode afetar o clock Esquecer de limpar o cache antes de medir o tempo de execução
Tipos de erros Erros randômicos Imprevisíveis e não determinísticos Não tendenciosos probabidade igual de aumentar ou diminuir valores medidos Resultantes de Limitações das ferramentas de medições Obtenção/registro dos dados de medição pelo observador Processo randomico dentro do sistema, sem causa conhecida Tipicamente dificil de ser controlado
Tipos de erros Erros Sistematicos acurácia Quão próximo a média dos valores medidos está do valor verdadeiro Erros Randomicos precisão Repetibilidade das medições
Tipos de erros
Tipos de erros Quantificar acurácia e precisão Acurácia Difícil determinar a verdadeira acurácia Relativa a um padrão pré-definido Ex. Definição de um segundo Precisão Quantificar quantidade de imprecisão usando ferramentas estatísticas
Intervalo de Confiança da Média
Intervalo de Confiança da Média
Intervalo de Confiança da Média
Intervalo de Confiança da Média É uma amplitude (ou um intervalo) de valores que tem a probabilidade de conter o valor verdadeiro da população
Intervalo de Confiança da Média Um intervalo de confiança é usado para estimar um parâmetro desconhecido de uma amostra de dados. O intervalo especifica a variação para o parâmetro e o nível de confiança que a variação cobre o verdadeiro valor.
Intervalo de Confiança da Média A média da amostra está deslocada da média da população devido a erros aleatórios.
Intervalo de Confiança da Média Observa-se que, na definição de intervalo de confiança, está associado uma probabilidade A esta probabilidade chamamos de: Grau de Confiança, Nível de Confiança, ou Coeficiente de Confiança
Intervalo de Confiança da Média Probabilidade c 1 u c 2 = 1 α O intervalo (c1,c2) é chamado de intervalo de confiança da média da população α é o nível de significância 100(1- α) é o nível de confiança 1- α é o coeficiente de confiança
Intervalo de Confiança da Média
Nível de Confiança É a probabilidade 1-α (comumente expressa percentualmente) do intervalo de confiança conter o valor verdadeiro
Nível de Confiança Comumente utiliza-se nível de confiança de: 90% α = 0,1 95% α = 0,05 99% α = 0,01
Seleção do Nível de Confiança Os níveis de confiança entre 90% e 95% são os valores comuns para papers cientificos (em Computação) Em geral, use o maior valor que lhe permita estabelecer conclusões sólidas num processo experimental!
Intervalo de Confiança da Média Valor Crítico (α/2) Corresponde ao valor de fronteira da área de α/2 na cauda direita da distribuição normal padronizada É o número na fronteira que separa os valores estatísticos amostrais prováveis de ocorrerem, dos valores que tem pouca chance de ocorrer
Intervalo de Confiança da Média Duas fórmulas para intervalo de confiança Acima de 30 amostras de qualquer distribuição: distribuição-z (Normal) Pequenas amostras de populações normalmente distribuídas: distribuiçao-t (Student)
Intervalo de Confiança da Média Fórmula do Intervalo de Confiança da Média para mais de 30 amostras Utiliza distribuição Z
Intervalo de Confiança da Média Tabela de distribuição Z
Intervalo de Confiança da Média Fórmula do Intervalo de Confiança da Média para menos de 30 amostras Utiliza distribuição T
Intervalo de Confiança da Média Grau de liberdade é o número de determinações independentes (dimensão da amostra) menos o número de parâmetros estatísticos a serem avaliados na população (para média é 1)
Intervalo de Confiança da Média Tabela de distribuição T
Intervalo de Confiança da Média Executei 8 vezes o meu programa de edição de imagens e obtive os seguintes resultados. Qual o Intervalo de Confiança?
Intervalo de Confiança da Média
Intervalo de Confiança da Média Como minha amostra tem apenas 8 exeperimentos (< 30), utilizarei a distribuição T para calcular o Intervalo de Confiança
Intervalo de Confiança da Média s = Desvio Padrão da Amostra = 2,14
Intervalo de Confiança da Média Intervalo de Confiança de 90% Probabilidade de 90% do valor real no intervalo I.C. 90% α = 0.10 1 α /2 = 0.95 n = 8, portanto tenho 7 graus de liberdade
Intervalo de Confiança da Média Intervalo de Confiança de 90%
Intervalo de Confiança da Média Portanto, posso dizer que em 90% dos experimentos, o valor encontrado estará entre 6,5 e 9,4 E para intervalo de confiança de 95%?
Intervalo de Confiança da Média Intervalo de Confiança de 95% Probabilidade de 95% do valor real no intervalo I.C. 90% α = 0.05 1 α /2 = 0.975 n = 8, portanto tenho 7 graus de liberdade
Intervalo de Confiança da Média Intervalo de Confiança de 95%
Intervalo de Confiança da Média Então, posso dizer que em 95% dos experimentos, o valor encontrado estará entre 6,1 e 9,7 Por que o intervalo é mais largo quando temos mais confiança?
Intervalo de Confiança da Média Quanto maior for a confiança, maior será o intervalo, dado que estamos inferindo com maior certeza onde o resultado ocorrerá
Representação gráfica do Intervalo de Confiança Como representar o intervalo de confiança em um grafico?
Intervalo de Confiança da Média Qual o erro máximo da minha estimativa? Erro máximo = Para exemplo: Intervalo Máximo Média Média Erro máximo com 90% de confiança 9,4 7,94 7,94 = 18,38%
Intervalo de Confiança da Média Desejo um intervalo de confiança de 90% com erro máximo de 3,5%. O que devo fazer? Realizar mais experimentos Quantos experimentos devo realizar?
Intervalo de Confiança da Média Como determinar o número de experimentos?
Intervalo de Confiança da Média Como saber quantos experimentos realizar, para que obtenha um erro máximo de 3,5%?
Intervalo de Confiança para proporções Proporção p = Pr(success) em n tentativas de um experimentos binomial Estime a proporção p = m/n m = número de sucessos n = número total de tentativas
Intervalo de Confiança para proporções
Intervalo de Confiança para proporções Quanto tempo o processador gasta executando o SO (system time)? Interrupção a cada 10 ms Contadores incrementais n = número de interrupções m = número de interrupções em PC dentro do SO
Intervalo de Confiança para proporções Quanto tempo o processador gasta executando o SO (system time)? Interrupção a cada 10 ms Contadores incrementais n = número de interrupções m = número de interrupções em PC dentro do SO Execute por 1 minuto n = 6000 m = 658
Intervalo de Confiança para proporções
Intervalo de Confiança de um lado Intervalos de dois lados testam se a média está fora ou dentro de uma variação definida pelos dois lados do intervalo Teste de intervalos de um único lado são úteis somente quando se está interessado em um limite. Ex.: Com 90% de confiança, qual o intervalo para o tempo médio de resposta ser menor que determinado valor (e.g., a média alcançada)
Intervalo de Confiança de um lado
Intervalo de Confiança Intervalo de Confiança mostrado é utilizado para a média É possível calcular intervalos de confiança para diferentes estatísticas Sendo df o grau de liberdade na estimativa y
Comparando alternativas Num projeto de pesquisa, geralmente, procura-se o melhor sistema, o melhor algoritmo: Exemplos: Determinar o sistema que apresente a melhor relação QoS-preço, onde QoS é medido experimentalmente Provar que um algoritmo Y executa mais rápido que outros existentes e sejam similares funcionalmente Métodos diferentes para observações pareadas (com par) e não pareadas (sem par)
Comparando Observações Pareadas: Método 1. Tratar o problema como uma amostra de n pares 2. Para cada teste calcule as diferenças dos resultados 3. Calcule os intervalos de confiança para as diferenças 4. Se o intervalo inclui 0 (zero), os objetos de comparação (ex.: sistemas, algoritmos, etc) não são diferentes 5. Se o intervalo não inclui zero, o sinal da diferença indica qual dos objetos é melhor baseado nos dados experimentais.
Exemplo Considere dois algoritmos de Inteligência Artificial que reconhecem objetos Algoritmo A Algoritmo B Desejo saber qual dos dois algoritmos acerta mais.
Exemplo Amostra de testes com 14 objetos
Exemplo Calcular diferença entre os algoritmos A B 2-2 -7 5 6-1 -7 6 7 3 2 1-1 6
Exemplo Calcular o intervalo de confiança para a diferença Média = 1,4 Intervalo de confiança de 90% (-0,75, 3,6) Não se pode rejeitar a hipótese que a diferença é 0 e que portanto os algoritmos tem desempenho similar E se alterarmos o nível de confiança? É possível determinar qual possui desempenho superior?
Exemplo Se utilizarmos intervalo de confiança de 70%, encontramos o seguinte intervalo: (0.10, 2.76) Como o intervalo é positivo e fizemos a diferença A-B Podemos concluir, com confiança de 70% que o algoritmo A é superior ao B
Comparando Observações Não Pareadas O número de experimentos comuns não é o mesmo
Teste T
Teste T
Exemplo Teste T Foram realizados experimentos com dois algoritmos distintos. Deseja saber qual possui desempenho superior.
Exemplo Teste T Computar a média das amostras Média A = 1046,25 Média B = 996,6 Computar os desvio-padrões Sa e Sb Sa = 49,25 Sb = 78,40 Computar a diferença das médias Média A Média B = 1046,25 996,6 = 49,65
Exemplo Teste T Computar o desvio-padrão das diferenças Computar os graus efetivos de liberdade
Exemplo Teste T Computar o intervalo de confiança Intervalo de Confiança de 90% (1046,25 996,6) +- t[0,95, 7) 39,14 49,65 +- 2,015 * 39,14 (-95,95, 195,25) Com um intervalo de confiança de 90%, não há diferença entre o desempenho dos algoritmos, pois o intervalo inclui o zero
Exemplo Teste T Intervalo de Confiança de 60% (1046,25 996,6) +- t[0,85, 7) 72,26 49,65 +- 0,920 * 72,26 49,65 +- 38,87 (10,78, 88,54) Com um intervalo de confiança de 60%, podemos dizer que o algoritmo A é superior ao algoritmo B
Comparando proporções Se n1 de n experimentos dão um certo resultado, então o intervalo de confiança (IC) para a proporção:
Comparando proporções Um experimento foi repetido em dois sistemas 40 vezes. O sistema A foi superior ao B em 26 repeticoes. Podemos dizer que, com confianca de 99%, o sistema A e superior ao sistema B? E com uma confianca de 90%?
Comparando proporções Como comparar os sistemas A e B? Encontrar o Intervalo de Confiança para a proporção Caso intervalo inclua 0,5, não posso dizer que A é superior a B Caso intervalo seja maior que 0,5, A é superior a B Caso intervalo seja menor que 0,5, A é inferior a B
Comparando proporções Definir proporção p = 26/40 = 0,65 Calcular desvio-padrão da estimativa
Comparando proporções Intervalo de confiança de 99% Como intervalo inclui 0,5, não podemos dizer que o desempenho de A é superior ao de B, com 99% de confiança
Comparando proporções Intervalo de confiança de 90% Como intervalo é superior a 0,5, podemos dizer que o desempenho de A é superior ao de B, com 90% de confiança
Programa Ciência da Computação Experimental e o Método Científico Conceitos estatísticos Caracterização de cargas Comparando Sistemas Usando Dados de Amostragem e Intervalos de Confiança Projeto de Experimentos
Projeto de Experimentos Projeto experimental refere-se a estrutura da organização de seu experimento Necessidade de metodologicamente cobrir fatores e níveis para obter um intervalo completo para os resultados experimentais desejados
Projeto de Experimentos Objetivo Obter a maior quantidade de informação Reduzir o trabalho/esforço de experimentação Tipicamente significa o menor número de experimentos Realizar mais experimentos não é bom (gasta-se tempo e recursos), principalmente se voce for aquele responsável pela execução dos mesmos. Experimentos bem projetados são mais fáceis de serem analisados.
Projeto de Experimentos Tipos de projetos Projeto simples Varia um fator de cada vez Projeto com fatorial completo Combinação de todos os fatores Projeto fatorial 2 k Usados para determinar os efeitos de k fatores Cada um com duas alternativas ou níveis
Programa Ciência da Computação Experimental e o Método Científico Conceitos estatísticos Caracterização de cargas Comparando Sistemas Usando Dados de Amostragem e Intervalos de Confiança Projeto de Experimentos Regressão Linear
Regressão Linear É um método para se estimar a condicional (valor esperado) de uma variável y, dados os valores de algumas outras variáveis x. Para dados correlacionados, um modelo deve prever uma resposta dado uma entrada Finalidade da regressão é a predição
Regressão Linear
Referência R. Jain, "The Art of Computer Systems Performance Analysis: Techniques for Experimental Design, Measurement, Simulation, and Modeling
Pedro Henrique Bragioni Las Casas Contato: pedro.lascasas@dcc.ufmg.br