This repository has been archived by the owner on Dec 22, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathindex.Rmd
212 lines (148 loc) · 12 KB
/
index.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
---
title: "Estatística Bayesiana com R e Stan"
description: "Companion para a disciplina de Estatística Bayesiana para alunos de Mestrado e Doutorado da UNINOVE"
author:
- name: Jose Storopoli
url: https://scholar.google.com/citations?user=xGU7H1QAAAAJ&hl=en
affiliation: UNINOVE
affiliation_url: https://www.uninove.br
orcid_id: 0000-0002-0559-5176
site: distill::distill_website
date: August 1, 2021
citation_url: https://storopoli.github.io/Estatistica-Bayesiana
slug: storopoli2021estatisticabayesianaR
bibliography: bib/bibliografia.bib
csl: bib/apa-cv.csl
suppress-bibliography: true
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```
<link rel="stylesheet" href="https://cdn.rawgit.com/jpswalsh/academicons/master/css/academicons.min.css"/>
[![CC BY-SA 4.0][cc-by-sa-shield]][cc-by-sa]
A disciplina toda foi gravada e disponibilizada no YouTube na playlist abaixo:
<style>.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }</style><div class='embed-container'><iframe src='https://www.youtube.com/embed/videoseries?list=PLpTXaEnTpmwNwBwwwLTDmCLekoUPtc0cP' frameborder='0' allowfullscreen></iframe></div>
```{r bayes-meme, echo=FALSE, fig.align='center', fig.cap='Bayesian for Everyone!'}
knitr::include_graphics("images/bayes-meme.jpg")
```
A Estatística Bayesiana é uma abordagem de Estatística inferencial que não usa hipóteses nulas ($H_0$) e $p$-valores. Se você não sabe o que é um $p$-valor, recomendo olhar [O que é Estatística Bayesiana](0-Estatistica-Bayesiana.html). Muitos cientistas e pesquisadores acreditam que sabe o que é um $p$-valor, mas sua compreensão é falha e imperfeita, por isso, mesmo que você acredite que saiba o que é um $p$-valor, eu ainda recomendo que veja [O que é Estatística Bayesiana](0-Estatistica-Bayesiana.html).
## Stan
[Stan](https://mc-stan.org) (Carpenter et al., 2017) é uma plataforma para modelagem e computação estatística de alto desempenho. Milhares de usuários contam com Stan para modelagem estatística, análise de dados e previsão nas ciências sociais, biológicas e físicas, engenharia e negócios. Stan tem mais de 3.600 citações no [Google Scholar](https://scholar.google.com/scholar?hl=pt-BR&as_sdt=0%2C5&q=Stan&btnG=)^[conforme consulta em 14 de Março de 2021.]. Além disso, Stan tem o suporte financeiro da [NumFOCUS](https://numfocus.org), uma fundação sem fins lucrativos que dá apoio financeiro à projetos de softwares *opensource*. Dentre os patrocinadores da NumFOCUS podemos citar AWS Amazon, Bloomberg, Microsoft, IBM, RStudio, Facebook, NVIDIA, Netflix, entre outras.
Os modelos em Stan são especificados pela sua própria linguagem (similar à C++) e são compilados em um arquivo executável que gera inferências estatísticas Bayesiana com amostragem Monte Carlo de correntes Markov (*Markov Chain Monte Carlo* -- MCMC) de alto desempenho. Stan possui interfaces para as seguintes linguagens de programação^[estou riscando as linguagens que não são *opensource* por uma questão de princípios.]:
* R: [`RStan`](https://mc-stan.org/users/interfaces/rstan.html) e [`CmdStanR`](https://mc-stan.org/cmdstanr)
* Python: [`PyStan`](https://mc-stan.org/users/interfaces/pystan.html) e [`CmdStanPy`](https://cmdstanpy.readthedocs.io/en/latest/getting_started.html)
* Shell (Linha de Comando): [`CmdStan`](https://mc-stan.org/users/interfaces/cmdstan.html)
* Julia: [`Stan.jl`](https://mc-stan.org/users/interfaces/julia-stan.html)
* Scala: [`ScalaStan`](https://github.com/cibotech/ScalaStan)
* ~~Matlab: [`MatlabStan`](https://mc-stan.org/users/interfaces/matlab-stan.html)~~
* ~~Stata: [`StataStan`](https://mc-stan.org/users/interfaces/stata-stan.html)~~
* ~~Mathematica: [`MathematicaStan`](https://mc-stan.org/users/interfaces/mathematica-stan.html)~~
A linguagem Stan possui uma curva de aprendizagem bem desafiadora, por isso Stan possui um ecossistema de pacotes de interfaces que muitas vezes ajudam e simplificam a sua utilização:
* [`rstanarm`](http://mc-stan.org/rstanarm/): ajuda o usuário a especificar modelos usando a sintaxe familiar de fórmulas do R.
* [`brms`](https://paul-buerkner.github.io/brms/): similar ao `rstanarm` pois usa a sintaxe familiar de fórmulas do R, mas dá maior flexibilidade na especificação de modelos mais complexos^[e geralmente a amostragem é um pouco mais rápida que o `rstanarm`.].
Stan^[e consequentemente todas suas interfaces com diversas linguagens de programação e todos os pacotes do seu ecossistema.] usa um amostrador MCMC que utiliza dinâmica Hamiltoniana (*Hamiltonian Monte Carlo* -- HMC) para guiar as propostas de amostragem de novos parâmetros no sentido do gradiente da densidade de probabilidade da posterior. Isto implica em um amostrador mais eficiente e que consegue explorar todo o espaço amostral da posterior com menos iterações; e também mais eficaz que consegue tolerar diferentes geometrias de espaços amostrais da posterior. Em outras palavras, Stan usa técnicas de amostragem avançadas que permite com que modelos complexos Bayesianos atinjam convergência de maneira rápida. No Stan, raramente deve-se ajustar os parâmetros do algoritmo HMC, pois geralmente os parâmetros padrões (*out-of-the-box*) funcionam muito bem. Assim, o usuário foca no que é importante: a especificação dos componentes probabilísticos do seu modelo Bayesiano.
## Como usar esse conteúdo?
Este conteúdo possui *licença livre para uso* (CC BY-SA). Caso queira utilizar o conteúdo para um curso ou estudos, por favor colabore nesse repositório quaisquer aprimorações que foram realizadas. O propósito do conteúdo não é o rigor matemático geralmente adotado em disciplinas e tutoriais de estatística Bayesiana, mas gerar uma forte intuição deixando de lado o rigor matemático e focar no ferramental (primariamente `rstanarm` e um pouco de `brms`).
Para configurar um ambiente local:
1. Clone o repositório do GitHub: `git clone https://github.com/storopoli/Estatistica-Bayesiana.git`
2. Acesse o diretório: `cd Estatistica-Bayesiana`
3. Instale os pacotes necessários: `Rscript .binder/install.R`
## Aulas
* [**O que é Estatística Bayesiana**](0-Estatistica-Bayesiana.html)
Conteúdos Primários:
1. [**Comandos Básicos de R**](1-Comandos_Basicos.html)
2. [**Distribuições Estatísticas**](2-Distribuicoes_Estatisticas.html)
3. [**`rstanarm` e `brms`**](3-rstanarm.html)
4. [**Priors**](4-Priors.html)
5. [**Markov Chain Montecarlo (MCMC)**](5-MCMC.html)
6. [**Regressão Linear**](6-Regressao_Linear.html)
7. [**Regressão Logística Bayesiana**](7-Regressao_Logistica.html)
8. [**Regressão de Poisson Bayesiana**](8-Regressao_Poisson.html)
9. [**Regressão Robusta Bayesiana**](9-Regressao_Robusta.html)
10. [**Modelos Multiníveis**](10-Regressao_Multinivel.html)
Conteúdos Auxiliares:
* [**Comparação de Modelos**](aux-Model_Comparison.html)
* [**Dados Faltantes**](aux-Dados_Faltantes.html)
* [**Coeficientes de uma Regressão**](aux-Regressao_Coeficientes.html)
* [**Tabelas para Publicação**](aux-Tabelas_para_Publicacao.html)
## O que esta disciplina **não** é
Não será coberto conteúdos sobre leitura, manipulação e exportação de dados com R. Para isso recomendo fortemente o livro **R para Data Science** (Figura \@ref(fig:data-science-book)) que pode ser encontrado gratuitamente [aqui](https://r4ds.had.co.nz) e possui uma [versão impressa em português](https://www.amazon.com.br/Para-Data-Science-Hadley-Wickham/dp/8550803243)[^1].
```{r data-science-book, echo=FALSE, fig.align='center', fig.cap='R for Data Science'}
knitr::include_graphics("images/R_for_data_science.jpg")
```
## **RStudio** na Núvem Gratuito
Clique no ícone abaixo para abrir uma sessão do RStudio no Projeto Binder.
[![Binder](http://mybinder.org/badge_logo.svg)](http://mybinder.org/v2/gh/storopoli/Estatistica-Bayesiana/master?urlpath=rstudio)
## Professor
Prof. Dr. José Eduardo Storopoli <a href="https://storopoli.github.io"><i class="fa fa-globe fa-lg"></i></a> <a href="http://lattes.cnpq.br/2281909649311607"><i class="ai ai-lattes ai-lg"></i></a> <a href="https://orcid.org/0000-0002-0559-5176"><i class="ai ai-orcid ai-lg"></i></a> <a href="mailto:[email protected]"><i class="fa fa-paper-plane fa-lg"></i></a>
## Como usar esse conteúdo?
Este conteúdo possui *licença livre para uso* (CC BY-SA). Caso queira utilizar o conteúdo para um curso ou estudos, por favor colabore nesse repositório quaisquer aprimorações que foram realizadas.
Para configurar um ambiente local:
1. Clone o repositório do GitHub: `git clone https://github.com/storopoli/Estatistica-Bayesiana.git`
2. Acesse o diretório: `cd Estatistica-Bayesiana`
3. Instale os pacotes necessários: `Rscript .binder/install.R`
## Referências
### Livros
* [@gelman2013bayesian]
* [@mcelreath2020statistical]
* [@gelman2020regression]
* [@brooksHandbookMarkovChain2011]
* [@geyer2011introduction]
### Artigos
#### Básicos
* [@vandeschootBayesianStatisticsModelling2021]
* [@gelmanBayesianWorkflow2020]
* [@gabryVisualizationBayesianWorkflow2019]
* [@benjaminRedefineStatisticalSignificance2018]
* [@carpenterStanProbabilisticProgramming2017]
* [@etzIntroductionConceptLikelihood2018]
* [@etzHowBecomeBayesian2018]
* [@mcshaneAbandonStatisticalSignificance2019]
* [@amrheinScientistsRiseStatistical2019]
* [@vanravenzwaaijSimpleIntroductionMarkov2018]
* [@vandekerckhove2015model]
* [@schootGentleIntroductionBayesian2014]
* [@Wagenmakers2007]
#### Complementares
* [@cohenEarth051994]
* [@dienesBayesianOrthodoxStatistics2011]
* [@etzIntroductionBayesianInference2018]
* [@junior2020vale]
* [@kerrHARKingHypothesizingResults1998]
* [@kruschke2015bayesian]
* [@kruschkeBayesianDataAnalysis2018]
* [@kruschkeBayesianNewStatistics2018]
* [@lakensJustifyYourAlpha2018]
* [@Morey2016]
* [@murphyHARKingHowBadly2019]
* [@starkCargocultStatisticsScientific2018]
## Conteúdos Similares
Existem alguns conteúdos em português similares que eu indico:
* Marco Inácio — [Apostila de Stan](https://marcoinacio.com/stan/)
Um dos desenvolvedores da equipe do Stan. A apostila está um pouco desatualizada (2018). O foco é o rigor matemático e a linguagem Stan. Muito bem escrita e com bons exemplos.
* Ricardo Ehlers (USP) — [Inferência Bayesiana (Notas de Aula)](https://sites.icmc.usp.br/ehlers/bayes/)
Notas de uma disciplina da USP pelo professor Ricardo Ehlers. O foco é o rigor matemática e as ferramentas utilizadas são desatualizadas (BUGS e JAGS). Também muito bem escrita e com bons exemplos.
* Luís Gustavo Esteves, Rafael Izbicki e Rafael Bassi Stern (UFSCar) — [Inferência Bayesiana (Notas de Aula)](https://github.com/rbstern/bayesian_inference_book)
Notas de uma disciplina da UFSCar pelos professores Luís Gustavo Esteves, Rafael Izbicki e Rafael Bassi Stern. O foco é o rigor matemático, mas o conteúdo é um pouco mais acessível com uma forte introdução à lógica Bayesiana. Fala um pouco da linguagem Stan e sua interface do R (`rstan`) no finalzinho.
## Como citar esse conteúdo
Para citar o conteúdo use:
```
Storopoli (2021). Estatística Bayesiana com R e Stan. Disponível em: https://storopoli.github.io/Estatistica-Bayesiana.
```
Ou em formato BibTeX para LaTeX:
```
@misc{storopoli2021estatisticabayesianaR,
author = {Storopoli, Jose},
title = {Estatística Bayesiana com R e Stan},
url = {https://storopoli.github.io/Estatistica-Bayesiana},
year = {2021}
}
```
[^1]: Não temos nada a ver com a Amazon. Caso queira comprar em qualquer outra loja fique à vontade, ou algum sebo... Jeff Bezos nem sabe que eu existo...
## Licença
Este obra está licenciado com uma Licença
[Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional][cc-by-sa].
[![CC BY-SA 4.0][cc-by-sa-image]][cc-by-sa]
[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/
[cc-by-sa-image]: https://licensebuttons.net/l/by-sa/4.0/88x31.png
[cc-by-sa-shield]: https://img.shields.io/badge/License-CC%20BY--SA%204.0-lightgrey.svg