Last active
March 1, 2017 02:36
-
-
Save eggplantbren/e70216e5bee27878fb2284bafd2801ef to your computer and use it in GitHub Desktop.
student-resources.html
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<!-- CSS classes --> | |
<style type="text/css"> | |
.small { font-size: 0.9em } | |
/* To keep the page narrowish */ | |
div.content { width: 600px } | |
</style> | |
<title>Resources for research students</title> | |
</head> | |
<body> | |
<div class="content"> | |
<!-- Welcome paragraph --> | |
<h1>Welcome</h1> | |
<p> | |
Here, I'll collect links to resources for learning various tools | |
and methods, some of which will be useful for research students working | |
with me. I'll generally only recommend things I've used or read myself. | |
Some of these are online resources, others are books that may or may | |
not be available at the Auckland uni library or at Auckland libraries | |
in general. | |
You are encouraged to search for other ones as well! | |
</p> | |
<p> | |
<a href="#bayes">Bayesian Inference</a><br> | |
<a href="#nestedsampling">Nested Sampling</a><br> | |
<a href="#dns">Diffusive Nested Sampling</a><br> | |
<a href="#computing">Computing</a> | |
</p> | |
<!-- Resources for Bayesian inference --> | |
<a name="bayes"></a><h2>Bayesian inference</h2> | |
<p class="small"> | |
<b>Data Analysis: A Bayesian Tutorial</b> by Sivia and Skilling. | |
Good for beginners with a physics background. Has Nested Sampling in it | |
too, but those sections are more challenging.<br> | |
</p> | |
<p class="small"> | |
<b>Bayesian Logical Data Analysis for the Physical Sciences</b> | |
by Phil Gregory. A bit more comprehensive than Sivia, and includes more | |
detail on the Metropolis algorithm. Again, good for people with some | |
physics background. | |
</p> | |
<p class="small"> | |
<b>Kendall's Advanced Theory of Statistics: Volume 2B: Bayesian Inference</b> | |
by O'Hagan and Forster. A nice and fairly comprehensive textbook. The | |
style and notation, and the examples given, are more like what | |
statisticians use, so this is good for people from a statistics | |
background. | |
</p> | |
<p class="small"> | |
<b>STATS 331 Lecture notes</b> by me! | |
A very gentle introduction, with some R and JAGS. Aimed mostly at | |
statistics students but should work for anyone. | |
<a href="https://www.stat.auckland.ac.nz/~brewer/stats331.pdf" | |
target="new">Available here</a>. | |
</p> | |
<p class="small"> | |
<b>Doing Bayesian Data Analysis</b> by John Kruschke. | |
Probably the best full textbook for beginners with a statistics | |
background. | |
</p> | |
<p class="small"> | |
<b>Information Theory, Inference, and Learning Algorithms</b> | |
by David MacKay (RIP). A very readable and engaging textbook. | |
Covers a wide range of topics apart from Bayes. | |
And there's a free, legal online PDF file of it! | |
<a href="http://www.inference.phy.cam.ac.uk/itprnn/book.html" | |
target="new">Available here</a>. | |
</p> | |
<a name="nestedsampling"></a><h2>Nested Sampling</h2> | |
<p class="small"> | |
Nested Sampling is my favourite Bayesian computation algorithm. I like | |
to use it in combination with the Metropolis algorithm. | |
My book chapter | |
<a href="https://www.stat.auckland.ac.nz/~brewer/wsbook.pdf" | |
target="new">Bayesian inference and computation: A beginner's | |
guide</a> | |
has a fairly gentle introduction. The corresponding Python code | |
is available <a href="https://github.com/eggplantbren/NSwMCMC" | |
target="new">here</a>. | |
</p> | |
<p class="small"> | |
The original Nested Sampling paper, by John Skilling, is very | |
useful, but isn't easy to read. There are a few different versions | |
floating around, but I usually use the one published in the | |
Bayesian Analysis journal. | |
<a href="http://projecteuclid.org/download/pdf_1/euclid.ba/1340370944" | |
target="new">Here it is</a>. | |
</p> | |
<p class="small"> | |
I have an implementation of Nested Sampling | |
<a href="https://github.com/eggplantbren/NestedSampling.jl" | |
target="new">written in Julia</a>. | |
With <a href="http://jtobin.io/" target="new">Jared Tobin</a>, I also | |
wrote an implementation | |
<a href="https://github.com/eggplantbren/NestedSampling.hs" | |
target="new">in Haskell</a>. | |
</p> | |
<a name="dns"></a><h2>Diffusive Nested Sampling</h2> | |
<p class="small"> | |
Diffusive Nested Sampling is an alternative to standard NS, that still | |
uses the Metropolis algorithm to move around. Here is the | |
<a href="https://arxiv.org/abs/1606.03757" | |
target="new">original paper describing the algorithm</a>, | |
the <a href="https://github.com/eggplantbren/DNest4" | |
target="new">software</a>, and the | |
<a href="https://github.com/eggplantbren/DNest4/raw/master/paper/static_pdf.pdf" target="new">paper describing the software</a>. | |
</p> | |
<a name="computing"></a><h2>Computing</h2> | |
<p class="small"> | |
It's worth getting good at using the command line of a Unix-like | |
operating system such as Mac OS X or Linux (e.g., Ubuntu). | |
If you only use Windows, that's okay, but it might be a bit more | |
annoying figuring out how to use certain things. | |
</p> | |
<p class="small"> | |
I recommend learning and using a version control system such as | |
git. There probably isn't much point for a 30-point project student, | |
but beyond that, it's pretty indispensible. | |
<a href="http://rogerdudler.github.io/git-guide/" target="new">This | |
tutorial</a> seems like a promising starting point. | |
</p> | |
<p class="small"> | |
My favourite book on C++ is | |
<a href="https://www.goodreads.com/book/show/11277418-professional-c" | |
target="new">Professional C++ by Marc Gregoire</a>. | |
It assumes you have a reasonable amount of programming experience. | |
</p> | |
<p class="small"> | |
My favourite book on Haskell is | |
<a href="https://www.goodreads.com/book/show/25587599-haskell-programming" | |
target="new">Haskell Programming from First Principles</a> | |
by Chris Allen and Julie Moronuki. | |
</p> | |
<p class="small"> | |
I haven't read any books on Python, but I followed Allen Downey | |
on Twitter for a while so maybe <a href="https://www.goodreads.com/book/show/14514306-think-python?from_search=true" target="new">try his one</a>. | |
Use Python 3, and make sure anything you find is teaching it. Forget | |
about Python 2. A good Python distribution with useful packages for | |
scientific stuff is | |
<a href="https://www.continuum.io/downloads" target="new">Anaconda</a>. | |
</p> | |
<p class="small"> | |
Many of you will have learned one or two programming languages | |
before, but will have to learn another one in order to work well | |
with me. When I have had to do this in the past, especially | |
for numerical work, I've found various "cheat sheets" useful, | |
which show how to do the same thing in several different | |
languages, side by side. Here are a couple of links which | |
might help:<br><br> | |
<a href="http://mathesaurus.sourceforge.net/r-numpy.html" | |
target="new">NumPy for R programmers</a><br> | |
<a href="http://hyperpolyglot.org/" target="new">Hyperpolyglot</a> | |
</p> | |
</div> <!-- The div around everything --> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment