5ecbf1d033be421d28ee19eee4e73c84.jpeg

Full Transcript

# UNCERTAINTY ## INTRODUCTION ### Types of Uncertainty * **Aleatoric Uncertainty** * Due to randomness that we cannot reduce. * Also known as statistical uncertainty. * Data-dependent - cannot be reduced by gathering more data. * Types: * **Homoscedastic:** Co...

# UNCERTAINTY ## INTRODUCTION ### Types of Uncertainty * **Aleatoric Uncertainty** * Due to randomness that we cannot reduce. * Also known as statistical uncertainty. * Data-dependent - cannot be reduced by gathering more data. * Types: * **Homoscedastic:** Constant for all inputs. * **Heteroscedastic:** Depends on the inputs. * **Epistemic Uncertainty** * Due to lack of knowledge about which model is correct. * Also known as systematic uncertainty. * Model-dependent - can be reduced if we gather more data. ## MODELING UNCERTAINTY ### Aleatoric Uncertainty * Regression: Model the parameters of the distribution (e.g., mean and variance), then predict the most likely parameters. * Classification: The softmax output can be interpreted as a predictive probability. ### Epistemic Uncertainty * **Bayesian Neural Network** * Put a prior on the weights. * Compute the posterior distribution of the weights given the data. * Make predictions by averaging over the posterior distribution. * Problem: Computing the posterior distribution is often intractable. * **Monte Carlo Dropout** * Apply dropout at test time. * Make multiple predictions with different dropout masks. * Average the predictions to get a final prediction. * This approximates Bayesian inference in a deep Gaussian process. * **Deep Ensembles** * Train multiple neural networks with different random initializations. * Average the predictions of the different networks. * Simple and effective. * Can also be used to estimate aleatoric uncertainty. ## UNCERTAINTY IN DEEP LEARNING ### Problems Due to Overconfidence * Calibration: Confidence should reflect the actual likelihood of correctness. * Overconfidence can lead to problems such as: * Reinforcement learning: Exploration problems. * Self-driving cars: Unexpected situations. * Medical diagnosis: Incorrect diagnoses. * Outside of the training distribution our models tend to be overconfident. ### How to Improve Uncertainty * **Calibration** * Post-processing methods: Platt scaling, Isotonic regression, Temperature scaling. * Focus on improving the calibration of the model. * **Training Data** * Create better training data: More data, more diverse data. * Data augmentation can improve uncertainty estimates. * **Model Architecture** * Modify the model architecture to improve uncertainty estimates. * Use a Bayesian neural network. * **Loss Function** * Modify the loss function to improve uncertainty estimates. * Focal loss * **Regularization** * Regularization can improve uncertainty estimates. * Dropout * **Ensembles** * Ensembles can improve uncertainty estimates. * Deep ensembles.