Although TensorFlow is primarily used for machine learning, you may also use TensorFlow for non-ML tasks that require numerical computation using dataflow graphs. TensorFlow Lite for mobile and embedded devices For Production TensorFlow Extended for end-to-end ML components. Create a Keras Layer. Instead, it uses another library to do. An open source Deep Learning library Released by Google in 2015 >1800 contributors worldwide TensorFlow 2. You can vote up the examples you like or vote down the ones you don't like. Keras is an open-source neural-network library written in Python. Copy the the test program and switch the copy to not use your custom layer and make sure that works. models import Sequential from keras. Word Embeddings with Keras. The following are code examples for showing how to use keras. I want to mimic this paper where they use fully connected upsampling layers. At the 2018 TensorFlow Developer Summit, we announced TensorFlow Probability: a probabilistic programming toolbox for machine learning researchers and practitioners to quickly and reliably build. layers] feat_extraction_model = keras. If use_bias is True, a bias vector is created and added to the outputs. Things to try: I assume you have a test program that uses your customer layer. layers import Dense, Activation, Dropout. 0 is released both keras and tf. load_images(x_train). The following functions are added into theano_backend. - 모듈 import 부분. TensorFlow, CNTK, Theano, etc. " Proceedings of the IEEE International Conference on Computer Vision. tensorflow/addons:RectifiedAdam; Usage import keras import numpy as np from keras_radam import RAdam # Build toy model with RAdam optimizer model = keras. Plus Keras tends to wrap up the model deeply, so you don't necessarily need to consider the backend to be Theano or TF, which is a big advantage of Keras. Things were different in Python land. Effective TensorFlow 2. The latter just implement a Long Short Term Memory (LSTM) model (an instance of a Recurrent Neural Network which avoids the vanishing gradient problem). Input() Input() is used to instantiate a Keras tensor. The next layer in our Keras LSTM network is a dropout layer to prevent overfitting. This method is applicable to: Models created with the tf. To begin, here's the code that creates the model that we'll be using. Our model is a Keras port of the TensorFlow tutorial on Simple Audio Recognition which in turn was inspired by Convolutional Neural Networks for Small-footprint Keyword Spotting. Lancaster stemming library is used to collapse distinct word forms: import nltk from nltk. You can vote up the examples you like or vote down the ones you don't like. epsilon: small float > 0. Now that we have initialized our model, we can start adding layers to it:. In this tutorial, you will discover exactly how to summarize and visualize your deep learning models in Keras. keras moving forward as the keras package will only support bug fixes. If this support. Keras provides a number of core layers which. fully-connected layers). interfaces import conv3d_args_preprocessor, generate_legacy_interface from keras. feature_column. I am defining the below subclasses using tf. GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together. 1:01 - Does tf. In terms of Keras, it is a high-level API (application programming interface) that can use TensorFlow's functions underneath (as well as other ML libraries like Theano). A bottleneck is an informal term we often use for the layer just before the final output layer that actually does the classification. This is a summary of the official Keras Documentation. This function adds an independent layer for each time step in the recurrent model. Just install and load the keras R package and then run the keras::install_keras() function, which installs TensorFlow, Python and everything else you need including a Virtualenv or Conda environment. We support import of all Keras model types, most layers and practically all utility functionality. Keras does not expect external numpy data at training time, and thus cannot accept numpy arrays for validation when all of a Keras Model's `Input(input_tensor)` layers are provided an `input_tensor` parameter, and the call to `Model. A RNN cell is a class that has: Note on using statefulness in RNNs: You can set RNN layers to be 'stateful', which means that the states computed for the samples in one batch will be reused as initial states for the samples in the next batch. cell: A RNN cell instance or a list of RNN cell instances. I don’t know so much about keras, but I’ve found this tutorial Visualizing Neural Network Layer Activation (Tensorflow Tutorial) very useful in visualizing deeper layers. In Keras, we can implement dropout by added Dropout layers into our network architecture. by Jaime Sevilla @xplore. You can vote up the examples you like or vote down the ones you don't like. sequence_categorical_column_with_identity tf. import numpy as np import tensorflow as tf from tensorflow. Beginner Keras / TensorFlow Tutorial for Deep Learning APMonitor. As tensorflow is a low-level library when compared to Keras , many new functions can be implemented in a better way in tensorflow than in Keras for example , any activation fucntion etc… And also the fine-tuning and tweaking of the model is very flexible in tensorflow than in Keras due to much more parameters being available. models import Sequential from keras. Normalize the activations of the previous layer at each batch, i. Our example in the video is a simple Keras network, modified from Keras Model Examples, that creates a simple multi-layer binary classification model with a couple of hidden and dropout layers and respective activation functions. Read writing about Keras in TensorFlow. This layer can add rows and columns of zeros at the top, bottom, left and right side of an image tensor. jl where the highest level API you can get are the nuts and bolts for constructing the layers. It's not as complex to build your own chatbot (or assistant, this word is a new trendy term for a chatbot) as you may think. layers and the new tf. The config of a layer does not include connectivity information, nor the layer class name. We support import of all Keras model types, most layers and practically all utility functionality. , Linux Ubuntu 16. Keras takes data in a different format and so, you must first reformat the data using datasetslib: x_train_im = mnist. The good news about Keras and TensorFlow is that you don't need to choose between them! The default backend for Keras is TensorFlow and Keras can be integrated seamlessly with TensorFlow workflows. nb_filter: Number of convolution. I strongly recommend checking out TensorFlow-Slim if you're looking for a lightweight abstraction for using TensorFlow – at least the layers, anyway. 0 and Keras API. Conv3D Layer in Keras. They are extracted from open source Python projects. A layer config is a Python dictionary (serializable) containing the configuration of a layer. One of the main advantages of tf. Keras •https://keras. Posted by the TensorFlow Team. Keras layers and models are fully compatible with pure-TensorFlow tensors. As tensorflow is a low-level library when compared to Keras , many new functions can be implemented in a better way in tensorflow than in Keras for example , any activation fucntion etc… And also the fine-tuning and tweaking of the model is very flexible in tensorflow than in Keras due to much more parameters being available. 0 API (so switching should be as easy as changing the Keras import statements), but it has many advantages for TensorFlow users, such as support for eager execution, distribution, TPU training, and generally far better integration between low-level TensorFlow and high-level concepts like Layer and Model. You do not need to create an InputLayer, you simply must import the BatchNormalization layer in the same manner as your Conv2D/other layers, e. , machine learning, and robotics, its time for the machines to perform tasks characteristic of human intelligence. "Learning Spatiotemporal Features With 3D Convolutional Networks. Cropping2D层 keras. Supports arbitrary network architectures: multi-input or multi-output models, layer sharing, model sharing, etc. It was developed by François Chollet, a Google engineer. So, all of TensorFlow with. I am writing a scheme program in dr racket that takes a list of numbers representing a matrix sets an item in the list to the number given. If you are familiar with Machine Learning and Deep Learning concepts then Tensorflow and Keras are really a playground to realize your ideas. conv3d: 三维卷积层. They are extracted from open source Python projects. add (keras. Run Keras models in the browser, with GPU support provided by WebGL 2. Models converted from Keras or TensorFlow tf. ZeroPadding2D(padding=(1, 1), data_format=None) Zero-padding layer for 2D input (e. Tensorflow and Keras are Deep Learning frameworks that really simplify a lot of things to the user. layers 类似，但是比较关键的地方就是keras取消了trainable这个参数，意味着keras无法控制层的参数更新与否，默认是更新参数的，这样的话不太好进行freeze. Designed to enable fast experimentation with deep neural networks, it focuses on being user-friendly, modular, and extensible. keras: import tensorflow as tf from tensorflow. Need to understand the working of 'Embedding' layer in Keras library. Note that this tutorial assumes that you have configured Keras to use the TensorFlow backend (instead of Theano). It is backward-compatible with TensorFlow 1. The config of a layer does not include connectivity information, nor the layer class name. KERAS_BACKEND=tensorflow python -c "from keras import backend" Using TensorFlow backend. Dropout of between 0. Keras makes use of TensorFlow's functions and abilities, but it streamlines the implementation of TensorFlow functions, making building a neural network much simpler and easier. Keras is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano. Install pip install keras-rectified-adam External Link. It wraps the efficient numerical computation libraries Theano and TensorFlow and allows you to define and train neural network models in just a few lines of code. Machines use their own senses to do things like…. This is the C3D model used with a fork of Caffe to the Sports1M dataset migrated to Keras. TensorFlow Lite for mobile and embedded devices For Production TensorFlow Extended for end-to-end ML components. Keras has become so popular, that it is now a superset, included with TensorFlow releases now! If you're familiar with Keras previously, you can still use it, but now you can use tensorflow. It was developed with a focus on enabling fast experimentation. TensorFlow is Python's most popular Deep Learning framework. Along the way, as you enhance your neural network to achieve 99% accuracy, you will also discover the tools of the trade that deep learning professionals use to train their models efficiently. advanced_activations. set_weights([K]) where. keras are in sync, implying that keras and tf. A few months ago I demonstrated how to install the Keras deep learning library with a Theano backend. keras API for this. Our model is a Keras port of the TensorFlow tutorial on Simple Audio Recognition which in turn was inspired by Convolutional Neural Networks for Small-footprint Keyword Spotting. Adding this layer to your model will drop units from the previous layer. The examples so far have described graphs of Keras models, where the graphs have been created by defining Keras layers and calling Model. Download files. Machines use their own senses to do things like…. Keras does not expect external numpy data at training time, and thus cannot accept numpy arrays for validation when all of a Keras Model's `Input(input_tensor)` layers are provided an `input_tensor` parameter, and the call to `Model. This means that Keras is appropriate for building essentially any deep learning model, from a memory network to a neural Turing machine. Keras was designed with user-friendliness and modularity as its guiding principles. The LocallyConnected2D layer works similarly to the Conv2D layer, except that weights are unshared, that is, a different set of filters is applied at each different patch of the input. TensorFlow Hub Loading. In version 2 of the popular machine learning framework the eager execution will be enabled by default although the static graph definition + session execution will be still supported (but hidden a little bit). In the words of Keras' author François Chollet, "Theano and TensorFlow are closer to NumPy, while Keras is closer to scikit-learn," which is to say that Keras is at a higher level compared to. TensorFlow is Python's most popular Deep Learning framework. The exact API will depend on the layer, but the layers Dense, Conv1D, Conv2D and Conv3D have a. Keras Backend. "Bottleneck" is not used to imply that the layer is slowing down the network. I'm open to model changes but the dataset cannot be reduced. What is BigDL. Keras is a simple and powerful Python library for deep learning. json configuration file, and the "backend" setting. KERAS_BACKEND=tensorflow python -c "from keras import backend" Using TensorFlow backend. The importer for the TensorFlow-Keras models would enable you to import a pretrained Keras model and weights. TensorFlow Lite for mobile and embedded devices For Production TensorFlow Extended for end-to-end ML components. normalization import BatchNormalization import numpy as np from matplotlib import pyplot as plt %matplotlib inline Using TensorFlow backend. If this support. models import Sequential from tensorflow. A layer config is a Python dictionary (serializable) containing the configuration of a layer. Printing a layer. BERT implemented in Keras. We have described the Keras Workflow in our previous post. js as well, but only in CPU mode. Regularizers allow to apply penalties on layer parameters or layer activity during optimization. Sep 22 2018- POSTED BY Brijesh Comments Off on Convolutional Neural Networks in TensorFlow Keras with MNIST(. Now, it's time to write our classification algorithm and train it. BigDL is a distributed deep learning library for Apache Spark; with BigDL, users can write their deep learning applications as standard Spark programs, which can directly run on top of existing Spark or Hadoop clusters. The exact API will depend on the layer, but the layers Dense, Conv1D, Conv2D and Conv3D have a. Tensorflow library provides the keras package as parts of its API, in order to use keras_metrics with Tensorflow Keras, you are advised to perform model training with initialized global variables: import numpy as np import keras_metrics as km import tensorflow as tf import tensorflow. Getting Started with Keras and TensorFlow. Mixture Density Networks with Edward, Keras and TensorFlow. keras as keras model = keras. padding: int, or tuple of 2 ints, or tuple of 2 tuples of 2 ints. R interface to Keras. A RNN cell is a class that has: Note on using statefulness in RNNs: You can set RNN layers to be 'stateful', which means that the states computed for the samples in one batch will be reused as initial states for the samples in the next batch. Deploying models to Android with TensorFlow Mobile involves three steps: Convert your trained model to TensorFlow; Add TensorFlow Mobile as a dependency in your Android app. This release comes with a. Word embedding is a method used to map words of a vocabulary to dense vectors of real numbers where semantically similar words are mapped to nearby points. Comparing XOR between tensorflow and keras. This function is part of a set of Keras backend functions that enable lower level access to the core operations of the backend tensor engine (e. There are faster and more efficient ways to implement them (plus results seem to look prettier) :. Developers can even use Keras alongside other TensorFlow libraries. We use the term bottleneck because near the output, the representation is much more compact than in the main body of the network. keras-vis is a high-level toolkit for visualizing and debugging your trained keras neural net models. The block diagram is given here for reference. TensorFlow v1. As a final thought, I am very much enjoying reading the MEAP from the forthcoming Manning Book, Deep Learning with R by François Chollet, the creator of Keras, and J. layers import Conv3D from keras. keras: import tensorflow as tf from tensorflow. The same layer can be reinstantiated later (without its trained weights) from this configuration. optimizers import SGD, RMSprop from keras. , machine learning, and robotics, its time for the machines to perform tasks characteristic of human intelligence. js as well, but only in CPU mode. Conv3D函数在TensorFlow中应用于3D卷积层，例如，卷上的空间卷积。_来自TensorFlow官方文档，w3cschool编程狮。. The most basic neural network architecture in deep learning is the dense neural networks consisting of dense layers (a. We’ll attempt to learn how to apply five deep learning models to the challenging and well-studied UCF101 dataset. The function returns the layers defined in the HDF5 (. Remember in Keras the input layer is assumed to be the first layer and not added using the add. Using tensorflow native layers in keras It would (at least) have to register the trainable weights from the TF graph with keras' Layer class. conv3d_transpose函数在TensorFlow中用于转置3D卷积层的功能接口。_来自TensorFlow官方文档，w3cschool编程狮。. output for layer in vgg19. SGD(learning_rate=0. I'm using the contributed conv3d_transpose but the concept should be the same as 2D version. keras) high-level API looks like, let's implement a multilayer perceptron to classify the handwritten digits from the popular Mixed National Institute of Standards and Technology (MNIST) dataset that serves as a popular benchmark dataset for machine learning algorithm. GitHub Gist: instantly share code, notes, and snippets. They are extracted from open source Python projects. Listing 2 shows the implementation in Keras. First of all, Layers API is deprecated and will be removed from TF 2. Keras, in contrast, was a separate library that just happened to rely on TensorFlow. "Learning Spatiotemporal Features With 3D Convolutional Networks. In this type of architecture, a connection between two nodes is only permitted from nodes. Like Keras, it also abstracts away much of the messy parts of programming deep networks. The LocallyConnected1D layer works similarly to the Conv1D layer, except that weights are unshared, that is, a different set of filters is applied at each different patch of the input. Keras Backend. compile(target_tensors)` defines all `target_tensors`. You can vote up the examples you like or vote down the ones you don't like. convolutional import Convolution3D, MaxPooling3D from keras. padding: int, or tuple of 2 ints, or tuple of 2 tuples of 2 ints. The penalties are applied on a per-layer basis. For details, see Keras as a simplified interface to TensorFlow: tutorial. These are handled by Network (one layer of abstraction above. Attention-based Image Captioning with Keras. compile() method, respectively. Dropout of between 0. , transform, a Python computation function into a high-performance TensorFlow graph. I want to mimic this paper where they use fully connected upsampling layers. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. layers = importKerasLayers(modelfile) imports the layers of a TensorFlow™-Keras network from a model file. Users will just instantiate a layer and then treat it as. This was a very hard problem before the rise of deep networks and especially Convolutional Neural Networks. add (keras. The examples so far have described graphs of Keras models, where the graphs have been created by defining Keras layers and calling Model. TensorFlow Lite for mobile and embedded devices For Production TensorFlow Extended for end-to-end ML components. Through a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. , Linux Ubuntu 16. In this post we explain the basic concept and general usage of RoI (Region of Interest) pooling and provide an implementation using Keras layers and the TensorFlow. sequence_input_layer tf. Convolutional layers in Layers API inherit from tf. TensorFlow 2＋Keras（tf. From there, we create a one-shot iterator and a graph node corresponding to its get_next() method. We have described the Keras Workflow in our previous post. We use the term bottleneck because near the output, the representation is much more compact than in the main body of the network. LayersModel. 2 stores layer weights in a dense but sparsely-populated 2D matrix and implements the forward pass as a single. You can vote up the examples you like or vote down the ones you don't like. compile() method, respectively. We use cookies for various purposes including analytics. Download files. Unlike image processing, the values of the 3D matrix are not continuous; they represent some discrete value of what "material" ca. System information Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No OS Platform and Distribution (e. feature_column. I have an output from a convolutional layer [6,6,6,256] being fed into an upsampling layer that is supposed to output [13,13,13,128]. sequence_categorical_column_with_vocabulary_file tf. R interface to Keras. It allows for fast prototyping and supports convolutional networks and recurrent networks. TFP Layers provides a high-level API for composing distributions with deep networks using Keras. The Keras deep learning Python library provides an example of how to implement the encoder-decoder model for machine translation (lstm_seq2seq. We have described the Keras Workflow in our previous post. Although Keras has supported TensorFlow as a runtime backend since December 2015, the Keras API had so far been kept separate from the TensorFlow codebase. This function is part of a set of Keras backend functions that enable lower level access to the core operations of the backend tensor engine (e. A good reason to choose Keras is that you could use TensorFlow backend without actually learning it. compile(target_tensors)` defines all `target_tensors`. 1BestCsharp blog 7,766,141 views. keras are in sync, implying that keras and tf. If you are using Theano (or any other backend to Keras that assumes channels first ordering), Lines 18 and 19 properly update the inputShape. Being able to go from idea to result with the least possible delay is key to doing good research. padding: int, or tuple of 2 ints, or tuple of 2 tuples of 2 ints. 0 release, Keras looks to be a winner, if not necessarily the winner. "Learning Spatiotemporal Features With 3D Convolutional Networks. convolutional import Convolution3D, MaxPooling3D from keras. It is backward-compatible with TensorFlow 1. Hello and welcome to part 6 of the deep learning basics with Python, TensorFlow and Keras. As per official docs, tf. See the article on Writing Custom Keras Models for additional documentation, including an example that demonstrates creating a custom model that encapsulates a simple multi-layer-perceptron model with optional dropout and batch normalization layers. Create the Network. etc as well as those are not specified in the backend documents but actually supported by Theano and TensorFlow. # apply a 3x3 unshared weights convolution with 64 output filters on a 32x32 image # with `data_format="channels. class InputSpec : Specifies the ndim, dtype and shape of every input to a layer. With the KNIME Deep Learning - Keras Integration, we have added a first version of our new KNIME Deep Learning framework to KNIME Labs (since version 3. - 모듈 import 부분. 下面我都是抄的，如果说是正确，那么conv3d就是2d+时间域的吧？网上搜的一篇资料，还没看：tensorflow中一维卷积conv1d处理语言序列的一点记录tensorflow中的conv1d和co 博文 来自： Loong Cheng的博客. A RNN cell is a class that has: Note on using statefulness in RNNs: You can set RNN layers to be 'stateful', which means that the states computed for the samples in one batch will be reused as initial states for the samples in the next batch. Model class API. Keras layers and models are fully compatible with pure-TensorFlow tensors. LayersModel. When using this layer as the first layer in a model, provide the keyword argument input_shape (tuple of integers, does not include the sample axis), e. In Keras, we can implement dropout by added Dropout layers into our network architecture. compile(target_tensors)` defines all `target_tensors`. layers import Dense, Activation, Dropout. feature_column. TensorFlow, CNTK, Theano, etc. 0 and Keras! Now let's check out a really quick example: hypernetworks. The exact API will depend on the layer, but the layers Dense, Conv1D, Conv2D and Conv3D have a. Keras has become so popular, that it is now a superset, included with TensorFlow releases now! If you're familiar with Keras previously, you can still use it, but now you can use tensorflow. System information Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No OS Platform and Distribution (e. C3D Model for Keras. layers is a direct substitute, because it will be the main high level api for future version. " Proceedings of the IEEE International Conference on Computer Vision. This example demonstrates a pre-trained sequence-to-sequence models can be used in the browser. keras import layers print(tf. Given that deep learning models can take hours, days and even weeks to train, it is important to know how to save and load them from disk. The following are code examples for showing how to use keras. conv3d: 三维卷积层. Getting Started with Keras and TensorFlow. Each Dropout layer will drop a user-defined hyperparameter of units in the previous layer every batch. TensorFlow, CNTK, Theano, etc. [[_text]]. A layer config is a Python dictionary (serializable) containing the configuration of a layer. The examples covered in this post will serve as a template/starting point for building your own deep learning APIs — you will be able to extend the code and customize it based on how scalable and robust your API endpoint needs to be. sequence_categorical_column_with_hash_bucket tf. It is a really good read, masterfully balancing theory and hands-on practice, that ought to be helpful to anyone interested in Deep Learning and TensorFlow. 0 Keras will be the default high-level API for building and training machine learning models, hence complete compatibility between a model defined using the old tf. The following are code examples for showing how to use keras. I am writing a scheme program in dr racket that takes a list of numbers representing a matrix sets an item in the list to the number given. TensorFlow is just one of the many open. 04): Linux Ubuntu 16. Models can be run in Node. When I attempt to run the fit with batch_size set to 1 using my 1070/32. Keras may be easier to get into and experiment with standard layers, in a plug & play spirit. The most basic neural network architecture in deep learning is the dense neural networks consisting of dense layers (a. Installation of Keras with tensorflow at the backend. preprocessing. This example demonstrates a pre-trained sequence-to-sequence models can be used in the browser. TensorFlow Lite for mobile and embedded devices For Production TensorFlow Extended for end-to-end ML components. Keras Visualization Toolkit. KERAS_BACKEND=tensorflow python -c "from keras import backend" Using TensorFlow backend. etc as well as those are not specified in the backend documents but actually supported by Theano and TensorFlow. This is also the last major release of multi-backend Keras. layers and the new tf. Being able to go from idea to result with the least possible delay is key to doing good research. BatchNormalization(). Put another way, you write Keras code using Python. data input pipeline to encode categorical columns, Keras API works well with tf. compile() method, respectively. In this post we will use Keras to classify duplicated questions from Quora. ———- old answer ———- Hi, I am one of the contributors of TensorLayer [1]. To use this with Keras, we make a dataset out of elements of the form (input batch, output batch). Along the way, as you enhance your neural network to achieve 99% accuracy, you will also discover the tools of the trade that deep learning professionals use to train their models efficiently. Model class API. Google recently announced Tensorflow 2. 0 is released both keras and tf. Sep 22 2018- POSTED BY Brijesh Comments Off on Convolutional Neural Networks in TensorFlow Keras with MNIST(. I am defining the below subclasses using tf. 04): Linux Ubuntu 16. padding: int, or tuple of 2 ints, or tuple of 2 tuples of 2 ints. We're going to talk about complex multi-input and multi-output models, different nodes from those models, sharing layers and more. GitHub Gist: instantly share code, notes, and snippets. The content of the local memory of the neuron consists of a vector of weights. image import ImageDataGenerator from keras. If you are using the Keras API directly, then you will be required to change to the Keras API implemented in a TensorFlow environment. Print() won't work because, well, I don't have tensors. In TensorFlow 2. PyTorch offers a lower-level approach and more flexibility for the more mathematically-inclined users. In Keras, we can implement dropout by added Dropout layers into our network architecture. I want to mimic this paper where they use fully connected upsampling layers. load_images(x_train). These penalties are incorporated in the loss function that the network optimizes. You do not need to create an InputLayer, you simply must import the BatchNormalization layer in the same manner as your Conv2D/other layers, e. 1BestCsharp blog 7,766,141 views. input_shape. keras using the tensorflowjs_converter. class InputSpec : Specifies the ndim, dtype and shape of every input to a layer. We will use TensorFlow with the tf. Unlike image processing, the values of the 3D matrix are not continuous; they represent some discrete value of what "material" ca. Print() won’t work because, well, I don’t have tensors. ———- old answer ———- Hi, I am one of the contributors of TensorLayer [1]. Given that deep learning models can take hours, days and even weeks to train, it is important to know how to save and load them from disk.