led by Prof. Ashley Villar
Organized by Penn State Center for Astrostatistics
This repository contains several computational notebooks:
- pca_intro.jl (Pluto notebook): Provides an introduction to Principal Components Analysis in two dimensions.
- kernel_pca_intro.jl (Pluto notebook): Demonstrates how using a kernel allows PCA to separate clusters of points when standard PCA can not.
- pca_apply.jl (Pluto notebook): Demonstrates combining PCA with SVM to classify high-redshift quasars.
- application_to_galaxy_images.ipynb (Jupyter notebook): Demonstrates combining PCA, radial basis function kernel, and SVM to classify galaxy images.
Most students will want to proceed in the order above. Students already confident in their understanding of PCA and Kernel PCA are welcome to jump to the applicaitons.
Files ending in .jl are Pluto notebooks written in Julia and files ending in .ipynb are Jupyter notebooks written in Python. Labs do not assume familiarity with either language. While it can be useful to "read" selected portions of the code, the lab tutorials aim to emphasize understanding how algorithms work, while minimizing need to pay attention to a language's syntax.
Instructions will be provided for students to run labs on AWS severs during the summer school. Below are instruction for running them outside of the summer school.
Summer School participants will be provided instructions for accessing a Pluto server. Others may install Julia and Pluto on their local computer with the following steps:
- Download and install current version of Julia from julialang.org.
- Run julia
- From the Julia REPL (command line), type
julia> using Pkg
julia> Pkg.add("Pluto")
(Steps 1 & 3 only need to be done once per computer.)
- Start Pluto
julia> using Pluto
julia> Pluto.run()
- Open the Pluto notebook for your lab
Summer School participants will be provided instructions for accessing JupyterLab server.
Others may install Python 3 and Jupyter (or JupyterLab) on their local computer or use Google Colab to open the Jupyter notebooks.
We welcome people filing issues and/or pull requests to improve these labs for future summer schools.
- GitHub respository for all of Astroinformatics Summer school
- Astroinformatics Summer school Website & registration