Métodos estatísticos em aprendizagem
description
Transcript of Métodos estatísticos em aprendizagem
![Page 1: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/1.jpg)
Métodos estatísticos em aprendizagem
Mestrado FEI
Paulo Santos
![Page 2: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/2.jpg)
Aprendizagem: raciocínio com incerteza a partir de observações
• aprender teorias probabilísticas sobre o mundo a partir da experiência;
• soluções gerais para os problemas de ruído, memorização e previsão ótima
![Page 3: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/3.jpg)
Aprendizagem estatística
• Conceitos fundamentais:– Dados: evidências, i.e. instanciações de
algumas ou de todas as variáveis aleatórias que descrevem o domínio;
– Hipóteses: teorias probabilísticas de como o domínio funciona • incluindo teorias lógicas como casos particulares.
![Page 4: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/4.jpg)
Exemplo: doce surpresa• Doces de cereja e lima em embalagens idênticas.
Cinco tipos de sacos de doces:• h1: 100% cereja• h2: 75% cereja + 25% lima• h3: 50% cereja + 50% lima• h4: 25% cereja + 75% lima• h5: 100% lima
Observamos doces de uma sacola:
Qual é o tipo da sacola? Qual será o próximo doce ?
![Page 5: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/5.jpg)
Exemplo: doce surpresa•Dado um novo saco de doce, a variável aleatória H
(hipótese) denota o tipo do saco (h1, ..., h5)•H não é diretamente observável;•A medida que os doces são abertos e inspecionados,
são revelados os dados - D1, D2, ... Dn, onde cada Di é uma variável aleatória com valores possíveis cereja e lima.
Observamos doces de uma sacola:
Qual é o tipo da sacola? Qual será o próximo doce ?
![Page 6: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/6.jpg)
Aprendizagem Bayesiana
• Calcula a probabilidade de cada hipótese, considerando-se os dados, e faz previsões de acordo com ela;– as previsões são feitas com o uso de todas as
hipóteses, ponderadas com suas probabilidades– A aprendizagem é reduzida à inferência
probabilística
![Page 7: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/7.jpg)
Aprendizagem Bayesiana
• Seja D a repres. de todos os dados, com valor observado d; então a probabilidade de cada hipótese é obtida pela regra de Bayes:
P(hi|d) = cP(d| hi)P(hi)
• A previsão de uma quantidade desconhecida X:
Onde cada hipótese determina uma distribuição sobre X
![Page 8: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/8.jpg)
Aprendizagem Bayesiana
• A previsão de uma quantidade desconhecida X:
•Onde cada hipótese determina uma distribuição sobre X
• I.e., as previsões são médias ponderadas sobre as previsões das hipóteses individuais – as hipóteses são intermediários entre os dados
brutos e as previsões.
![Page 9: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/9.jpg)
de volta aos doces
• Suponha que a distribuição a priori sobre h1,..., h5 seja dada por <0.1, 0.2, 0.4, 0.2, 0.1>
• A probabilidade dos dados é calculada sob a suposição de que as observações são independentementes e identicamente distribuídas:
P(d|hi) = ∏j P(dj|hi)
– i.e, uma observação não depende das anteriores, dado as hipóteses
![Page 10: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/10.jpg)
de volta aos doces
• Suponha que a sacola seja realmente uma sacola só com doces de lima (h5) e que os primeiros 10 doces sejam todos de lima; então
– P(d|h3) = ∏j P(dj|h3) = 0.510
• (metade dos doces em h3 é de lima)
• Como as probabilidades mudam com novas observações ?
![Page 11: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/11.jpg)
Probabilidade Posterior de Hipóteses
Prob a priori
![Page 12: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/12.jpg)
Probabilidades prevista de que o próximo doce seja de lima
![Page 13: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/13.jpg)
Probabilidades prevista de que o próximo doce seja de lima
![Page 14: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/14.jpg)
Aprendizagem Bayesiana
• Dada a distribuição a priori de todas as hipóteses
• A hipótese verdadeira eventualmente domina a previsão Bayesiana
• A previsão é ótima quer o conjunto de dados seja pequeno ou grande
• para problemas reais de aprendizagem o espaço de hipóteses é em geral muito grande ou infinito
![Page 15: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/15.jpg)
Aprendizagem Bayesiana aproximada : MAP
• Fazer previsões com uma única hipótese: a mais provável:– hi que maximize P(hi|d)
– hipótese de máximo a posteriori: MAP – previsões aproximadamente Bayesianas:
P(X|d) ≈ P(X|hMAP)
• após 3 doces de lima seguidos hMAP= h5
• o 4o doce será previsto de lima com 100% de certeza
![Page 16: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/16.jpg)
MAP
• maximizar P(hi|d)
P(hi|d) = cP(d| hi)P(hi)
• logo hMAP para maximizar P(d| hi)P(hi) é equivalente a minimizar:
- log2 P(d|hi) - log2 P(hi)
![Page 17: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/17.jpg)
MAP
• Outra possibilidade é tomar o logaritmo de:
P(hi|d) = cP(d| hi)P(hi)
• logo hMAP para maximizar P(d| hi)P(hi) e equivalente a minimizar:
- log2 P(d|hi) - log2 P(hi)
número de bits necessários
para especificar hi
número adicional de bits para
especificar os dados
![Page 18: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/18.jpg)
MAP
- log2 P(d|hi) - log2 P(hi)
número de bits em hi
para especificar
(explicar) os dados
número adicional de bits para
especificar os dados
(considere que nenhum bit é necessário se a hipótese prevê
os dados exatamente: log 1 = 0
![Page 19: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/19.jpg)
MAP
- log2 P(d|hi) - log2 P(hi)
• Minimizar isso significa, portanto, encontrar a hipótese que encontre a compactação máxima dos dados
![Page 20: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/20.jpg)
MAP
• encontrar a hipótese que encontre a compactação máxima dos dados
Principal idéia por traz dá aprendizagem por
comprimento mínimo de descrição (CMD)
[minimum description length (MDL) learning]:
minimizar o tamanho da hipótese e das codificações dos dados
![Page 21: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/21.jpg)
Aprendizagem de parâmetros com dados completos
• Aprendizagem de parâmetros com dados completos:– descoberta dos parâmetros numéricos para um
modelo de probabilidade cuja estrutura é fixa– Dados são completos quando cada ponto de
dados contém valores para toda variável no modelo de probabilidade que está sendo aprendido. • simplificam o processo de aprendizagem
![Page 22: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/22.jpg)
Exemplo
• saco de doces de um novo fabricante cujas proporções de cereja e lima são completamente desconhecidas (entre 0 e 1)– quantidade contínua de hipóteses
• O parâmetro (θ) é a proporção de doces de cereja (1 - θ é a prop de lima)
• A hipótese é hθ
![Page 23: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/23.jpg)
Exemplo
• supondo que todas as proporções são igualmente prováveis a priori:– máxima probabilidade é razoável
• Modelando como uma rede Bayesiana:
![Page 24: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/24.jpg)
Aprendizagem de parâmetros em redes Bayesianas
– Desembrulhando N doces (“c” de cereja e “N - c” lima)
– A hipótese de máxima probabilidade é dada pelo valor de θ que maximiza essa expressão, também obtido maximizando-se:
![Page 25: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/25.jpg)
Aprendizagem de parâmetros em redes Bayesianas
– O valor de máxima probabilidade de θ é obtido por:
![Page 26: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/26.jpg)
Aprendizagem de parâmetros de máxima probabilidade
• Escrever uma expressão para a probabilidade dos dados como uma função dos parâmetros
• Escrever a derivada da probabilidade logarítmica com relação a cada parâmetro
• Encontrar os valores de parâmetros tais que as derivadas sejam iguais a zero
![Page 27: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/27.jpg)
Aprendizagem de parâmetros de máxima probabilidade
• Principal problema (small sample size problem):– para conjuntos de dados pequenos, alguns
eventos recebem probabilidade zero– divisão não definida
![Page 28: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/28.jpg)
Outro exemplo:
• Embalagens de doces coloridas de vermelho e verde– a embalagem de cada doce é selecionada
probabilisticamente, segundo alguma distribuição condicional desconhecida, dependendo do sabor
![Page 29: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/29.jpg)
Múltiplos parâmetros
• três parâmetros θ, θ1, θ2. – A probabilidade de ver um doce de cereja em
uma embalagem verde (segundo a semântica de redes Bayesianas) é:
![Page 30: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/30.jpg)
Multiplos parâmetros
• Desembrulhamos N doces: c (cer.) e l (lima)– rc de cereja tem embalagens vermelhas
– gc de cereja tem embalagens verdes
– rl e gl analogamente
![Page 31: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/31.jpg)
Múltiplos parâmetros
• A probabilidade dos dados é, portanto:
![Page 32: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/32.jpg)
Múltiplos parâmetros
![Page 33: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/33.jpg)
Múltiplos parâmetros
• esses resultados podem ser estendidos a qqr rede Bayesiana cujas probabilidades condicionais são dadas como tabelas
• com dados completos, o problema de aprendizagem de parâmetros por máxima probabilidade se decompõe em problemas de aprendizagem separados: um para cada parâmetro.
• os valores de parâmetros para uma variável, dados seus pais, são as frequências observadas dos valores de variáveis para cada configuração dos valores dos pais
![Page 34: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/34.jpg)
Aprendizagem de parâmetros de máxima probabilidade:
modelo Gaussiano Linear• modelos de probabilidade contínuos
– os princípios são idênticos aos do caso discreto– Ex. aprendizagem de parâmetros de uma
função de densidade gaussiana sob uma única variável:
![Page 35: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/35.jpg)
– parâmetros desse modelo:•μ: média e σ: desvio padrão
– Sejam os valores observados x1, ..., xN. Então a probabilidade logarítmica é:
![Page 36: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/36.jpg)
• Definindo as derivadas como zero:
i.e. o valor de máxima probabilidade da média é a média
das amostras e o valor de máxima probabilidade do desvio-padrão
é a raiz quadrada da variância das amostras
![Page 37: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/37.jpg)
• Considere um modelo gaussiano linear com um pai contínuo X e um filho contínuo Y.
• Para aprender a distribuição condicional P(Y|X) podemos maximizar a probabilidade condicional:
– para os parâmetros: θ1, θ2 e σ
![Page 38: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/38.jpg)
• (yj - (θ1xj + θ2 ))2 é o erro para (xj,yj)
• ‘E’ é a soma de erros quadráticos– quantidade minimizada por regressão linear
![Page 39: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/39.jpg)
• a minimização da soma dos erros quadráticos fornece o modelo de linha reta de máxima probabilidade, desde que os dados sejam gerados com ruído gaussiano de variância fixa.
![Page 40: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/40.jpg)
Aprendizagem de estruturas de redes Bayesianas
• Até agora supomos que a estrutura da rede bayesiana é dada: – somente aprende-se os parâmetros
• Em alguns casos o modelo causal está indisponível ou em disputa
![Page 41: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/41.jpg)
Aprendizagem de estruturas
• Abordagem óbvia:– buscar um modelo:
• iniciar com um modelo que não contenha nenhum vínculo e começar a adicionar pais correspondentes a cada nó, ajustando os parâmetros e medindo a exatidão do modelo resultante.
• começar com um palpite inicial sobre a estrutura e utilizar busca por subida de encosta para fazer modificações, retornando os parâmetros após cada mudança de estrutura.– modificações: inversão, adição ou eliminação de arcos.
– busca sobre ordenações possíveis
![Page 42: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/42.jpg)
Aprendizagem de estruturas
• Uma boa estrutura foi encontrada?– testar se as asserções de independência condicional implícitas
na estrutura são realmente satisfeitas nos dados.
P(Sex/Sab, Bar|VaiEsperar) = P(Sex/Sab|VaiEsperar)P(Bar|VaiEsperar)• Verificar nos dados se esta equação é válida.
– ainda que a estrutura descreva a verdadeira natureza causal do domínio, flutuações estatísticas no conjunto de dados significam que a equação nunca será satisfeita exatamente, e então precisamos utilizar um teste estatístico apropriado para verificar se existe evidência estatística suficiente de que a hipótese de independência foi violada• quanto mais rígido for este teste, mais vínculos serão adicionados e maior o
risco de superadaptação.
![Page 43: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/43.jpg)
Aprendizagem de variáveis ocultas
• Variáveis ocultas (ou latentes)– ex. registros médicos contêm sintomas
observáveis e o tratamento, mas raramente uma observação da doença!•Por que não construir um modelo sem esta variável?
![Page 44: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/44.jpg)
Aprendizagem de variáveis ocultas
![Page 45: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/45.jpg)
Aprendizagem de variáveis ocultas
• Variáveis latentes podem reduzir drasticamente o número de parâmetros exigidos para especificar uma rede Bayesiana.
![Page 46: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/46.jpg)
Aprendizagem de variáveis ocultas:o algoritmo EM
• EM: Expectation Maximization (Esperança Maximização)– Formação de agrupamentos não
supervisionados•Distinguir várias categorias em uma coleção de
objetos• não supervisionado: os rótulos não são dados
![Page 47: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/47.jpg)
Aprendizagem de variáveis ocultas:o algoritmo EM
– Formação de agrupamentos não supervisionados•Começamos dos dados• ajustar alguma distribuição de probabilidades que
pudesse ter gerado os dados•Pressupõe que os dados são gerados a partir de uma
distribuição de mistura P– uma distribuição tem k componentes, cada um dos quais
é uma distribuição:
P(x) = ∑ki=1 P(C = i) P(x|C = i)
![Page 48: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/48.jpg)
Aprendizagem de variáveis ocultas:o algoritmo EM
– Formação de agrupamentos não supervisionados•No caso de dados contínuos:
– gaussiana multivariada: fornece uma família de distribuições chamada mistura de distribuições gaussianas
– wi = P(C=i) --- peso de cada componente
– μi ---- media de cada componente
– Σi --- co-variância de cada componente
![Page 49: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/49.jpg)
Aprendizagem de variáveis ocultas:o algoritmo EM
![Page 50: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/50.jpg)
o algoritmo EM
– O problema de formação de agrupamentos não-supervisionados consiste em recuperar um modelo de mistura como o da Fig. 20.8(b) a partir de dados brutos como os da Fig. 20.8 (a).
– Idéia básica:• fingir que conhecemos os parâmetros do modelo e
depois deduzir a probabilidade de cada ponto de dados pertencer a cada componente
• depois disso, readaptamos os componentes aos dados, onde cada componente é ajustado ao conjunto de dados inteiro, cada ponto ponderado com a possibilidade de pertencer a esse componente
![Page 51: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/51.jpg)
o algoritmo EM
– Para mistura de distribuições gaussianas, inicalizamos arbitrariamente os parâmetros do modelo de mistura e repetimos:•Etapa E: calcular as probabilidades pij=P(C=i|xj)
– a probabilidade de que o dado xj tenha sido gerado pelo componente i.
– pela regra de Bayes: pij= aP(xj|C = i)P(C=i)
» P(xj|C = i): probabilidade em xj do i-esimo gaussiano
» P(C = i): peso para o iesimo gaussiano
– definir: pi = Σj pij
•Etapa M:
![Page 52: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/52.jpg)
o algoritmo EM
– Para mistura de distribuições gaussianas, inicalizamos arbitrariamente os parâmetros do modelo de mistura e repetimos:•Etapa E: calcular as probabilidades pij=P(C=i|xj)
– a probabilidade de que o dado xj tenha sido gerado pelo componente i.
– pela regra de Bayes: pij= aP(xj|C = i)P(C=i)
» P(xj|C = i): probabilidade em xj do i-esimo gaussiano
» P(C = i): peso para o iesimo gaussiano
– definir: pi = Σj pij (somar sobre todas probabilidades de todos os pontos j terem sido gerados pela gaussiana i)
•Etapa M:
![Page 53: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/53.jpg)
o algoritmo EM
•Etapa M: calcular a nova média, co-variância e os pesos dos componentes:
μi ← Σj pijxj/pi
Σi ← Σj pijxjxjT/pi
wi ← pi
![Page 54: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/54.jpg)
o algoritmo EM
• Etapa E (esperança):– cálculo dos valores esperados pij das variáveis
indicadoras Zij ocultas
• Etapa M (maximização):– encontra os novos valores dos parâmetros que
maximizam a probabilidade logaritmica dos dados, dados os valores esperados das variáveis indicadoras ocultas.
![Page 55: Métodos estatísticos em aprendizagem](https://reader036.fdocument.pub/reader036/viewer/2022081512/56815397550346895dc19d13/html5/thumbnails/55.jpg)
Aprendizagem de redes Bayesianas com variáveis ocultas• Execício:
– leia e entenda esta seção. Uma questão sobre este assunto cairá na prova.• (dica: para entender esta seção você terá antes que
entender -- quase -- todo o capítulo!)