gitextract_qpn122o6/ ├── .github/ │ ├── FUNDING.yml │ └── workflows/ │ └── run-notebooks.yaml ├── .gitignore ├── .pre-commit-config.yaml ├── LICENSE ├── README.md ├── environment.yaml ├── notebooks/ │ ├── ch01_Introduction.ipynb │ ├── ch02_Probability_Distributions.ipynb │ ├── ch03_Linear_Models_for_Regression.ipynb │ ├── ch04_Linear_Models_for_Classfication.ipynb │ ├── ch05_Neural_Networks.ipynb │ ├── ch06_Kernel_Methods.ipynb │ ├── ch07_Sparse_Kernel_Machines.ipynb │ ├── ch08_Graphical_Models.ipynb │ ├── ch09_Mixture_Models_and_EM.ipynb │ ├── ch10_Approximate_Inference.ipynb │ ├── ch11_Sampling_Methods.ipynb │ ├── ch12_Continuous_Latent_Variables.ipynb │ └── ch13_Sequential_Data.ipynb ├── prml/ │ ├── __init__.py │ ├── bayesnet/ │ │ ├── __init__.py │ │ ├── discrete.py │ │ ├── probability_function.py │ │ └── random_variable.py │ ├── clustering/ │ │ ├── __init__.py │ │ └── k_means.py │ ├── dimreduction/ │ │ ├── __init__.py │ │ ├── autoencoder.py │ │ ├── bayesian_pca.py │ │ └── pca.py │ ├── kernel/ │ │ ├── __init__.py │ │ ├── gaussian_process_classifier.py │ │ ├── gaussian_process_regressor.py │ │ ├── kernel.py │ │ ├── polynomial.py │ │ ├── rbf.py │ │ ├── relevance_vector_classifier.py │ │ ├── relevance_vector_regressor.py │ │ └── support_vector_classifier.py │ ├── linear/ │ │ ├── __init__.py │ │ ├── _bayesian_logistic_regression.py │ │ ├── _bayesian_regression.py │ │ ├── _classifier.py │ │ ├── _empirical_bayes_regression.py │ │ ├── _fishers_linear_discriminant.py │ │ ├── _least_squares_classifier.py │ │ ├── _linear_regression.py │ │ ├── _logistic_regression.py │ │ ├── _perceptron.py │ │ ├── _regression.py │ │ ├── _ridge_regression.py │ │ ├── _softmax_regression.py │ │ ├── _variational_linear_regression.py │ │ └── _variational_logistic_regression.py │ ├── markov/ │ │ ├── __init__.py │ │ ├── categorical_hmm.py │ │ ├── gaussian_hmm.py │ │ ├── hmm.py │ │ ├── kalman.py │ │ ├── particle.py │ │ └── state_space_model.py │ ├── nn/ │ │ ├── __init__.py │ │ ├── array/ │ │ │ ├── __init__.py │ │ │ ├── array.py │ │ │ ├── broadcast.py │ │ │ ├── ones.py │ │ │ ├── reshape.py │ │ │ └── zeros.py │ │ ├── config.py │ │ ├── distribution/ │ │ │ ├── __init__.py │ │ │ ├── bernoulli.py │ │ │ ├── categorical.py │ │ │ ├── distribution.py │ │ │ └── gaussian.py │ │ ├── function.py │ │ ├── image/ │ │ │ ├── __init__.py │ │ │ ├── convolve2d.py │ │ │ ├── deconvolve2d.py │ │ │ ├── max_pooling2d.py │ │ │ └── util.py │ │ ├── io/ │ │ │ ├── __init__.py │ │ │ └── io.py │ │ ├── loss/ │ │ │ ├── __init__.py │ │ │ ├── kl.py │ │ │ ├── sigmoid_cross_entropy.py │ │ │ └── softmax_cross_entropy.py │ │ ├── math/ │ │ │ ├── __init__.py │ │ │ ├── add.py │ │ │ ├── divide.py │ │ │ ├── exp.py │ │ │ ├── log.py │ │ │ ├── matmul.py │ │ │ ├── mean.py │ │ │ ├── multiply.py │ │ │ ├── negative.py │ │ │ ├── power.py │ │ │ ├── product.py │ │ │ ├── sqrt.py │ │ │ ├── square.py │ │ │ ├── subtract.py │ │ │ └── sum.py │ │ ├── network.py │ │ ├── nonlinear/ │ │ │ ├── __init__.py │ │ │ ├── log_softmax.py │ │ │ ├── logit.py │ │ │ ├── relu.py │ │ │ ├── sigmoid.py │ │ │ ├── softmax.py │ │ │ ├── softplus.py │ │ │ └── tanh.py │ │ ├── normalization/ │ │ │ ├── __init__.py │ │ │ └── batch_normalization.py │ │ ├── optimizer/ │ │ │ ├── __init__.py │ │ │ ├── ada_delta.py │ │ │ ├── ada_grad.py │ │ │ ├── adam.py │ │ │ ├── gradient.py │ │ │ ├── momentum.py │ │ │ ├── optimizer.py │ │ │ └── rmsprop.py │ │ ├── queue.py │ │ └── random/ │ │ ├── __init__.py │ │ ├── dropout.py │ │ ├── normal.py │ │ ├── random.py │ │ └── uniform.py │ ├── preprocess/ │ │ ├── __init__.py │ │ ├── gaussian.py │ │ ├── label_transformer.py │ │ ├── polynomial.py │ │ └── sigmoidal.py │ ├── rv/ │ │ ├── __init__.py │ │ ├── bernoulli.py │ │ ├── bernoulli_mixture.py │ │ ├── beta.py │ │ ├── categorical.py │ │ ├── dirichlet.py │ │ ├── gamma.py │ │ ├── gaussian.py │ │ ├── multivariate_gaussian.py │ │ ├── multivariate_gaussian_mixture.py │ │ ├── rv.py │ │ ├── students_t.py │ │ ├── uniform.py │ │ └── variational_gaussian_mixture.py │ └── sampling/ │ ├── __init__.py │ ├── metropolis.py │ ├── metropolis_hastings.py │ ├── rejection_sampling.py │ └── sir.py ├── setup.cfg ├── setup.py └── test/ ├── __init__.py ├── test_bayesnet/ │ ├── __init__.py │ └── test_discrete.py ├── test_linear/ │ ├── __init__.py │ ├── test_bayesian_regression.py │ ├── test_linear_regression.py │ ├── test_logistic_regression.py │ └── test_ridge_regression.py └── test_nn/ ├── __init__.py ├── test_backward.py ├── test_distribution/ │ ├── __init__.py │ ├── test_bernoulli.py │ └── test_gaussian.py ├── test_image/ │ ├── __init__.py │ ├── test_convolve2d.py │ ├── test_deconvolve2d.py │ └── test_max_pooling2d.py ├── test_loss/ │ ├── __init__.py │ └── test_sigmoid_cross_entropy.py ├── test_math/ │ ├── __init__.py │ ├── test_add.py │ ├── test_log.py │ ├── test_matmul.py │ ├── test_multiply.py │ └── test_negative.py ├── test_nonlinear/ │ ├── __init__.py │ ├── test_log_softmax.py │ ├── test_sigmoid.py │ ├── test_softmax.py │ └── test_tanh.py └── test_random/ └── __init__.py