{"cells": [{"cell_type": "markdown", "id": "e7c29085", "metadata": {"papermill": {"duration": 0.012321, "end_time": "2023-10-11T16:06:20.651062", "exception": false, "start_time": "2023-10-11T16:06:20.638741", "status": "completed"}, "tags": []}, "source": ["\n", "# Tutorial 7: Deep Energy-Based Generative Models\n", "\n", "* **Author:** Phillip Lippe\n", "* **License:** CC BY-SA\n", "* **Generated:** 2023-10-11T16:04:04.126072\n", "\n", "In this tutorial, we will look at energy-based deep learning models, and focus on their application as generative models.\n", "Energy models have been a popular tool before the huge deep learning hype around 2012 hit.\n", "However, in recent years, energy-based models have gained increasing attention because of improved training methods and tricks being proposed.\n", "Although they are still in a research stage, they have shown to outperform strong Generative Adversarial Networks\n", "in certain cases which have been the state of the art of generating images\n", "([blog post](https://ajolicoeur.wordpress.com/the-new-contender-to-gans-score-matching-with-langevin-sampling/)about strong energy-based models,\n", "[blog post](https://medium.com/syncedreview/nvidia-open-sources-hyper-realistic-face-generator-stylegan-f346e1a73826) about the power of GANs).\n", "Hence, it is important to be aware of energy-based models, and as the theory can be abstract sometimes,\n", "we will show the idea of energy-based models with a lot of examples.\n", "This notebook is part of a lecture series on Deep Learning at the University of Amsterdam.\n", "The full list of tutorials can be found at https://uvadlc-notebooks.rtfd.io.\n", "\n", "\n", "---\n", "Open in [{height=\"20px\" width=\"117px\"}](https://colab.research.google.com/github/PytorchLightning/lightning-tutorials/blob/publication/.notebooks/course_UvA-DL/07-deep-energy-based-generative-models.ipynb)\n", "\n", "Give us a \u2b50 [on Github](https://www.github.com/Lightning-AI/lightning/)\n", "| Check out [the documentation](https://pytorch-lightning.readthedocs.io/en/stable/)\n", "| Join us [on Slack](https://www.pytorchlightning.ai/community)"]}, {"cell_type": "markdown", "id": "8c47b1ee", "metadata": {"papermill": {"duration": 0.008095, "end_time": "2023-10-11T16:06:20.667558", "exception": false, "start_time": "2023-10-11T16:06:20.659463", "status": "completed"}, "tags": []}, "source": ["## Setup\n", "This notebook requires some packages besides pytorch-lightning."]}, {"cell_type": "code", "execution_count": 1, "id": "5a8ec6b2", "metadata": {"colab": {}, "colab_type": "code", "execution": {"iopub.execute_input": "2023-10-11T16:06:20.686406Z", "iopub.status.busy": "2023-10-11T16:06:20.685655Z", "iopub.status.idle": "2023-10-11T16:08:04.396471Z", "shell.execute_reply": "2023-10-11T16:08:04.395355Z"}, "id": "LfrJLKPFyhsK", "lines_to_next_cell": 0, "papermill": {"duration": 103.723648, "end_time": "2023-10-11T16:08:04.399332", "exception": false, "start_time": "2023-10-11T16:06:20.675684", "status": "completed"}, "tags": []}, "outputs": [{"name": "stdout", "output_type": "stream", "text": ["\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\r\n", "\u001b[0m"]}], "source": ["! pip install --quiet \"pytorch-lightning>=1.4, <2.1.0\" \"setuptools>=68.0.0, <68.3.0\" \"torchvision\" \"torch>=1.8.1, <2.1.0\" \"tensorboard\" \"ipython[notebook]>=8.0.0, <8.17.0\" \"torchmetrics>=0.7, <1.3\" \"urllib3\" \"matplotlib\" \"matplotlib>=3.0.0, <3.9.0\" \"lightning>=2.0.0\""]}, {"cell_type": "markdown", "id": "d1a391e6", "metadata": {"papermill": {"duration": 0.00843, "end_time": "2023-10-11T16:08:04.418583", "exception": false, "start_time": "2023-10-11T16:08:04.410153", "status": "completed"}, "tags": []}, "source": ["