avehtari / bda_course_aalto Goto Github PK
View Code? Open in Web Editor NEWBayesian Data Analysis course at Aalto
Home Page: https://avehtari.github.io/BDA_course_Aalto/
Bayesian Data Analysis course at Aalto
Home Page: https://avehtari.github.io/BDA_course_Aalto/
Add to assignments page examples:
Here are some fictional examples of good help requests:
Chat: TODO: add BDA course specific example
Zoom: TODO: add BDA course specific example
For comparison, see Parallel computing course examples http://ppc.cs.aalto.fi/2020/lab/
The recommended tool in this course is R (with the IDE R-Studio). You candownload Rhereand R-Studiohere. There are tons of tutorials, videos andintroductions to R and R-Studio online. You can find some initial hints here.
Hi, the link (https://rstudio.com/online-learning/) in You can find some initial hints here.
in assignment 1 is outdated.
https://avehtari.github.io/BDA_R_demos/demos_ch10/demo10_2.html
comment line of scale_color_discrete
show red line is g
not q
distr <- ggplot(data = df1) +
geom_line(aes(x, p, fill = grp, color = grp)) +
labs(title = 'Target and proposal distributions', x = '', y = '') +
scale_color_discrete(labels = c('q(theta|y)', 'g(theta)')) +
theme(legend.position = 'bottom', legend.title = element_blank())
The tasks in the assignment description and rubric questions have different order, which is confusing. Right now:
Q4 -- corresponds to task 2;
Q5 -- task 3;
Q6 -- task 5;
Q7 -- task 2 (and the "k-values should be visualized or tabulated" part from the rubric should probably be in the task description and not in the "Hint" section, since it seems like a requirement);
Q8 -- task 4;
So the right order should probably be:
Q4, Q7, Q5, Q8 and Q6.
We should add sub-sections in each question particularly question 2. For example:
Refactor the following to
- Include in the report the proposal distribution, number of chains used, the starting points (or the mechanism for generating them), the number of draws generated from each chain, and the warm-up length. Also plot the chains separately for alpha and beta, overlapping chains help to visually assess whether the chains have converged or not. However, in complex scenarios, visual assessment is not sufficient and Rˆ is a more robust indicator of convergence (of the metropolis chains).
This is much easier to refer back to in the rubric.
Task 2: Update the rubric to refer to these individual sub-questions.
The dmvnorm function checks whether the first argument is a matrix or not. This check is done by checking if class(x) is ‘matrix’. However, class(x) may return a list of class strings. In this case, R decides to do the comparison separately for each element of the list. This will cause an error if the result of the comparison varies between elements.
This bug can be fixed by replacing if (class(x) == ‘matrix’) with if (‘matrix’ %in% class(x)) in the dmvnorm function.
I have attached a small R script that demonstrates this problem. It is a .txt file since GitHub does not support .r files.
bug_demo.txt
Hi,
I am trying to answer some of the questions on the registration form and thus browsing the webpage. I think the links to the schedule in this section
Weekly assignments
There are 9 weekly assignments. Assignments are linked from the schedule and can also be found from git repo assignments folder. The deadline days for the assignments are given in the course schedule.
return 404. (link: https://avehtari.github.io/BDA_course_Aalto/gsu.html#Schedule_2021
)
Dear Vehtari
exercises/additional_files/psrf.py
is not compatible with Python3. This is because it uses the function xrange
, which was removed in Python3. In order to make it Python3-compatible, you can simply have the following block in the top of the script:try:
xrange
except NameError:
xrange = range
However, since the end-of-life Python2 is drawing near, most cental Python projects have vowed to stop supporting Python 2 before 2020, including Numpy, PyStan, Scipy, Jupyter and Cython, and Python3 was released more than 10 years ago, I'd argue it instead might be worth just dropping Python 2 compatibility instead.
return_extra=True
, the output tau
is not documented.It seems that install_github
fails for some reason when installing the aaltobda
package. @andrjohns suggested to use install.packages("aaltobda", repos = c("https://avehtari.github.io/BDA_course_Aalto/", getOption("repos")))
which seems to work.
The error is actually shown in the template, so we should probably change the instructions as it is likely to fail for others too.
From the template:
"
The following installs the aaltobda package:
# Caching should be fine here
install.packages("remotes")
Installing package into '/usr/local/lib/R/site-library'
(as 'lib' is unspecified)
remotes::install_github("avehtari/BDA_course_Aalto", subdir = "rpackage", upgrade="never")
Downloading GitHub repo avehtari/BDA_course_Aalto@HEAD
Error in utils::download.file(url, path, method = method, quiet = quiet, :
download from 'https://api.github.com/repos/avehtari/BDA_course_Aalto/tarball/HEAD' failed
"
Dear Aki,
Thank you very much for this great course.
I just wanted to ask if it is possible to render the BDA book in PDF with 1.5 times bigger fonts, or to make epub/mobi/fb2 format?
I just want to make so that the book will display on Kindle DX (10 inch screen reader) with bigger fonts.
Now the fonts are too small, reading on ebook is not comfortable. It is possible only on computer monitor, which is also hard to read for long time (eyes pain).
Thanks in advance.
Regards,
Ihor
It seems that the students have some trouble identifying what these mean. Instead of the current explanation we could add "fraternal twin (two different embryos and then could be of different sex) and identical twin (same egg divides into two, so they share the same sex)", or something of the like.
ping @MansMeg @kunalghosh @adhaka
I'm writing to express my appreciation for the informative and well-produced videos on Panopto's
I'd like to propose a new feature suggestion: the ability to automatically generate subtitles in English for your Panopto videos. This would significantly enhance accessibility and improve the overall user experience for viewers.
Update the github.io course page to mention and give instructions on the possibility to submit all assignments at the end of the course for a second round of peergrading.
In the description of assignment 1 question 5, it is written "see Exercise 1.5 in BDA3", however it should be Exercise 1.6, please see Bayesian Data Analysis, third edition, page 28 or DBA3
Cross check that the gh-page, peergrade and TA-sheet have the correct deadlines.
I just tried to render assignment4.qmd
but it failed due to a missing file.
Here is what I did:
[Code] git clone [email protected]:avehtari/BDA_course_Aalto.git
Cloning into 'BDA_course_Aalto'...
remote: Enumerating objects: 6270, done.
remote: Counting objects: 100% (190/190), done.
remote: Compressing objects: 100% (106/106), done.
remote: Total 6270 (delta 86), reused 181 (delta 83), pack-reused 6080
Receiving objects: 100% (6270/6270), 120.16 MiB | 5.63 MiB/s, done.
Resolving deltas: 100% (4009/4009), done.
[Code]
[Code] cd BDA_course_Aalto
[BDA_course_Aalto] git checkout gh-pages master
branch 'gh-pages' set up to track 'origin/gh-pages'.
Switched to a new branch 'gh-pages'
[BDA_course_Aalto] cd assignments gh-pages
[assignments] ls gh-pages
README.md assignment4.Rnw assignment8.pdf simple_template3.qmd
additional_files assignment4.html assignment8_rubric.html simple_template4.html
assignment1.Rnw assignment4.pdf assignment8_rubric.md simple_template4.pdf
assignment1.html assignment4.qmd assignment9.Rnw simple_template4.qmd
assignment1.pdf assignment4_rubric.html assignment9.pdf site_libs
assignment1.qmd assignment4_rubric.md assignment9_rubric.html template1.html
assignment1_rubric.html assignment5.Rnw assignment9_rubric.md template1.pdf
assignment1_rubric.md assignment5.pdf general_info.tex template1.qmd
assignment2.Rnw assignment5_rubric.html index.html template2.html
assignment2.html assignment5_rubric.md index.qmd template2.pdf
assignment2.pdf assignment6.Rnw makefile template2.qmd
assignment2.qmd assignment6.pdf search.json template3.html
assignment2_rubric.html assignment6_rubric.html simple_template1.html template3.pdf
assignment2_rubric.md assignment6_rubric.md simple_template1.pdf template3.qmd
assignment3.Rnw assignment7.Rnw simple_template1.qmd template3_files
assignment3.html assignment7.pdf simple_template2.html template4.html
assignment3.pdf assignment7_fig1.pdf simple_template2.pdf template4.pdf
assignment3.qmd assignment7_rubric.html simple_template2.qmd template4.qmd
assignment3_rubric.html assignment7_rubric.md simple_template3.html tests
assignment3_rubric.md assignment8.Rnw simple_template3.pdf
[assignments] quarto render assignment4.qmd gh-pages
ERROR: Include directive failed.
in file assignment4.qmd,
could not find file /Users/tedgro/Code/BDA_course_Aalto/assignments/general_info.md.
[assignments]
Are you supposed to explain the terms with one sentence, or with one sentence each?
We can also simplify a bit the text of the exercise 1.3. It currently stands as
The researchers are happy with these preliminary results (about 97% success rate), and wish to get the test to market as soon as possible. How would you advise them? Base your answer on elementary probability calculus.
We could leave it
The researchers are happy with these preliminary results, and wish to get the test to market as soon as possible. How would you advise them? Base your answer on bayes' rule computations.
Some fo the students where puzzled by the "basic calculus" bit.
ping @MansMeg @kunalghosh
During the exercise sessions the students were confused (at least I had to explain to 4 students) about how to use markmyassignment
to validate their solutions.
A note like the following, in exercise PDFs, should be helpful.
Calling
mark_my_assignment()
without any arguments checks the functions that you are supposed to implement in this assignment.
The rubrics of exercise 7 problem 2 has very vague definitions of what the model plot for the pooled, separate and hierarchical model should be.
It just mentions
The following model solution plot is used as a reference in the grading for the separate model:
The actual plots need not be included in the rubrics, but maybe a description of what plots are expected would help when we form a report. Something like
The following histograms of a) posterior distribution of mean for 6th machine b) posterior predictive distribution for the 6th machine and c) Posterior distribution of mean for a 7th machine will be used as a reference for the pooled model.
This would then give the student information on what all graphs may be included in the report so that the evaluator will be able to grade better .
Similar things for
discussion about question i)
This could also be written as
discussion about question i) the posterior distribution of mean of measurement of the 6th machine
There are cases where our test suite for markmyassignment
checks the functions with some parameter names that must be present in the definition of the student, as in
p_identical_twin <- function(fraternal_prob=..., identical_prob=...) {}
If the student then names the function arguments using a different name R will raise an error, so we should just state cleary in the assignment pdf that they must use those same names.
I believe there is a typo on page 10 of Chapter 5 slides,
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.