{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Welcome to AI for Science Bootcamp\n",
    "\n",
    "The objective of this bootcamp is to give an introduction to application of Artificial Intelligence (AI) algorithms in Science ( High Performance Computing(HPC) Simulations ). This bootcamp will introduce participants to fundamentals of AI and how those can be applied to different HPC simulation domains. \n",
    "\n",
    "The following contents will be covered during the Bootcamp :\n",
    "\n",
    "- [CNN Primer and Keras 101](Intro_to_DL/Part_2.ipynb)\n",
    "- [Tropical Cyclone Intensity Estimation using Deep Convolution Neural Networks.](Tropical_Cyclone_Intensity_Estimation/The_Problem_Statement.ipynb)\n",
    "\n",
    "## Quick GPU Check\n",
    "\n",
    "Before moving forward let us check if Tensorflow backend is able to see and use GPU"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Import Necessary Libraries\n",
    "\n",
    "from __future__ import absolute_import, division, print_function, unicode_literals\n",
    "\n",
    "# TensorFlow and tf.keras\n",
    "import tensorflow as tf\n",
    "from tensorflow import keras\n",
    "\n",
    "# Helper libraries\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "print(tf.__version__)\n",
    "\n",
    "\n",
    "tf.test.gpu_device_name()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The output of the cell above should show all the available compaitable GPU on the system. If no GPU device is listed or you see an error means that there was no compaitable GPU present on the system and the future calls may run on CPU consuming more time"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## [CNN Primer and Keras 101](Intro_to_DL/Part_2.ipynb)\n",
    "\n",
    "In this notebook, participants will be introduced to Convolution Neural Network and how to implement one using Keras API. For an absolute beginner to CNN and Keras this notebook would serve as a good starting point.\n",
    "\n",
    "**By the end of this notebook you will:**\n",
    "\n",
    "- Understand the Machine Learning pipeline\n",
    "- Understand how a Convolution Neural Network works\n",
    "- Write your own Deep Learning classifier and train it.\n",
    "\n",
    "For in depth understanding of Deep Learning Concepts, visit [NVIDIA Deep Learning Institute](https://www.nvidia.com/en-us/deep-learning-ai/education/)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## [Tropical Cyclone Intensity Estimation using Deep Convolutional Neural Networks](Tropical_Cyclone_Intensity_Estimation/The_Problem_Statement.ipynb)\n",
    "\n",
    "In this notebook, participants will be introduced to how Convolutional Neural Networks (CNN) can be applied in the field of Climate analysis.\n",
    "\n",
    "**Contents of this Notebook:**\n",
    "\n",
    "- Understanding the problem statement\n",
    "- Building a Deep Learning pipeline\n",
    "- Understand input data\n",
    "- Annotating the data\n",
    "- Build the model\n",
    "- Understanding different accuracy and what they mean\n",
    "- Improving the model\n",
    "\n",
    "**By the End of the Notebook you will:** \n",
    "\n",
    "- Understand the process of applying Deep Learning to solve a problem in the field of Climate Analysis \n",
    "- Understand various challenges with data pre-processing\n",
    "- How hyper-parameters play an essential role in improving the accuracy of the model."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
