As telescopes, detectors, and computers grow ever more powerful, the volume of data at the disposal of astronomers and astrophysicists will enter the petabyte domain, providing accurate measurements for billions of celestial objects. This book provides a comprehensive and accessible introduction to the cutting-edge statistical methods needed to efficiently analyze complex data sets from astronomical surveys such as the Panoramic Survey Telescope and Rapid Response System, the Dark Energy Survey, and the upcoming Large Synoptic Survey Telescope. It serves as a practical handbook for graduate students and advanced undergraduates in physics and astronomy, and as an indispensable reference for researchers.
"Statistics, Data Mining, and Machine Learning in Astronomy" presents a wealth of practical analysis problems, evaluates techniques for solving them, and explains how to use various approaches for different types and sizes of data sets. For all applications described in the book, Python code and example data sets are provided. The supporting data sets have been carefully selected from contemporary astronomical surveys (for example, the Sloan Digital Sky Survey) and are easy to download and use. The accompanying Python code is publicly available, well documented, and follows uniform coding standards. Together, the data sets and code enable readers to reproduce all the figures and examples, evaluate the methods, and adapt them to their own fields of interest. Describes the most useful statistical and data-mining methods for extracting knowledge from huge and complex astronomical data sets Features real-world data sets from contemporary astronomical surveys Uses a freely available Python codebase throughout Ideal for students and working astronomers
Author(s): Željko Ivezić; Andrew Connolly; Jake Vanderplas; Alexander Gray
Publisher: Princeton University Press
Year: 2014
Language: English
Pages: 560
Cover
Title
Copyright
Contents
Preface
I Introduction
1 About the Book and Supporting Material
1.1 What Do Data Mining, Machine Learning, and Knowledge Discovery Mean?
1.2 What is This Book About?
1.3 An Incomplete Survey of the Relevant Literature
1.4 Introduction to the Python Language and the Git Code Management Tool
1.5 Description of Surveys and Data Sets Used in Examples
1.6 Plotting and Visualizing the Data in This Book
1.7 How to Efficiently Use This Book
References
2 Fast Computation on Massive Data Sets
2.1 Data Types and Data Management Systems
2.2 Analysis of Algorithmic Efficiency
2.3 Seven Types of Computational Problem
2.4 Seven Strategies for Speeding Things Up
2.5 Case Studies: Speedup Strategies in Practice
References
II Statistical Frameworks and Exploratory Data Analysis
3 Probability and Statistical Distributions
3.1 Brief Overview of Probability and Random Variables
3.2 Descriptive Statistics
3.3 Common Univariate Distribution Functions
3.4 The Central Limit Theorem
3.5 Bivariate and Multivariate Distribution Functions
3.6 Correlation Coefficients
3.7 Random Number Generation for Arbitrary Distributions
References
4 Classical Statistical Inference
4.1 Classical vs. Bayesian Statistical Inference
4.2 Maximum Likelihood Estimation (MLE)
4.3 The goodness of Fit and Model Selection
4.4 ML Applied to Gaussian Mixtures: The Expectation Maximization Algorithm
4.5 Confidence Estimates: the Bootstrap and the Jackknife
4.6 Hypothesis Testing
4.7 Comparison of Distributions
4.8 Nonparametric Modeling and Histograms
4.9 Selection Effects and Luminosity Function Estimation
4.10 Summary
References
5 Bayesian Statistical Inference
5.1 Introduction to the Bayesian Method
5.2 Bayesian Priors
5.3 Bayesian Parameter Uncertainty Quantification
5.4 Bayesian Model Selection
5.5 Nonuniform Priors: Eddington, Malmquist, and Lutz–Kelker Biases
5.6 Simple Examples of Bayesian Analysis: Parameter Estimation
5.7 Simple Examples of Bayesian Analysis: Model Selection
5.8 Numerical Methods for Complex Problems (MCMC)
5.9 Summary of Pros and Cons for Classical and Bayesian methods
References
III Data Mining and Machine Learning
6 Searching for Structure in Point Data
6.1 Nonparametric Density Estimation
6.2 Nearest-Neighbor Density Estimation
6.3 Parametric Density Estimation
6.4 Finding Clusters in Data
6.5 Correlation Functions
6.6 Which Density Estimation and Clustering Algorithms Should I Use?
References
7 Dimensionality and Its Reduction
7.1 The Curse of Dimensionality
7.2 The Data Sets Used in This Chapter
7.3 Principal Component Analysis
7.4 Nonnegative Matrix Factorization
7.5 Manifold Learning
7.6 Independent Component Analysis and Projection Pursuit
7.7 Which Dimensionality Reduction Technique Should I Use?
References
8 Regression and Model Fitting
8.1 Formulation of the Regression Problem
8.2 Regression for Linear Models
8.3 Regularization and Penalizing the Likelihood
8.4 Principal Component Regression
8.5 Kernel Regression
8.6 Locally Linear Regression
8.7 Nonlinear Regression
8.8 Uncertainties in the Data
8.9 Regression that is Robust to Outliers
8.10 Gaussian Process Regression
8.11 Overfitting, Underfitting, and Cross-Validation
8.12 Which Regression Method Should I Use?
References
9 Classification
9.1 Data Sets Used in This Chapter
9.2 Assigning Categories: Classification
9.3 Generative Classification
9.4 K-Nearest-Neighbor Classifier
9.5 Discriminative Classification
9.6 Support Vector Machines
9.7 Decision Trees
9.8 Evaluating Classifiers: ROC Curves
9.9 Which Classifier Should I Use?
References
10 Time Series Analysis
10.1 Main Concepts for Time Series Analysis
10.2 Modeling Toolkit for Time Series Analysis
10.3 Analysis of Periodic Time Series
10.4 Temporally Localized Signals
10.5 Analysis of Stochastic Processes
10.6 Which Method Should I Use for Time Series Analysis?
References
IV Appendices
A An Introduction to Scientific Computing with Python
A.1 A Brief History of Python
A.2 The SciPy Universe
A.3 Getting Started with Python
A.4 IPython: The Basics of Interactive Computing
A.5 Introduction to NumPy
A.6 Visualization with Matplotlib
A.7 Overview of Useful NumPy/SciPy Modules
A.8 Efficient Coding with Python and NumPy
A.9 Wrapping Existing Code in Python
A.10 Other Resources
B AstroML:Machine Learning for Astronomy
B.1 Introduction
B.2 Dependencies
B.3 Tools Included in AstroML v0.1
C Astronomical Flux Measurements andMagnitudes
C.1 The Definition of the Specific Flux
C.2 Wavelength Window Function for Astronomical Measurements
C.3 The Astronomical Magnitude Systems
D SQL Query for Downloading SDSS Data
E Approximating the Fourier Transform with the FFT
References
Visual Figure Index
Index