[Hands-on]Buidling and training your own neural network with Tensorflow 2.0 and Python
It is often seen that many a times many machine learning practitioners rely on methods like transfer learning or similar to train their datasets for business or personal project applications. With very little understanding that you get from a prebuilt neural network there comes a point where one realizes that there is a performance and accuracy trade-off and one has less control over the model they used to train their data, which leads them to trying out numerous models spending valuable development time in training. The knowledge and understanding of building one's own neural networks can go far in helping realizing the true potential of neural networks that come's with a important learning curve of knowing all hyperparameters and giving you true control over your data and results.
The workshop will focus on training attendees to learn and build their own neural network layers like
Dense using the
keras backend in
Tensorflow 2.0 . The workshop will also include writing custom
callbacks that give you more control over the training of your neural network with options like stopping the training at a particular accuracy over a epoch etc. Fashion MNIST from
tensorflow.datasets will be the dataset that will be used using normalization over the dataset. Furthermore, the audience will be getting acquainted with how convolutions work and understanding optimizers particularly
Target Audience - Beginner to Intermediate
- Presentation : Getting to know about convolutions, pooling, strides, padding.
- Code : Build and train simple network to solve linear equation explaining the concept of tensor and Tensorflow.
- Code : Build, train and save your own convolutional neural network using different layers in Tensorflow and Python.
Participants will :
- Learn about basics of Tensorflow 2.0.
- Learn to build their own CNN using keras layers in Tensorflow.
- Learn about callbacks and their implementations.
- Understand visualizing and normalizing their dataset.
- Save and run inference on their custom built model.
and optional : they will be able to say they built their own neural network and probably share cool results too.
- 00:00 - 00:09 - [SLIDES] Introduction, deep learning applications overview, brief about SIFT features
- 00:09 - 00:22 - [SLIDES] ImageNet challenge, data collection, common computer vision tasks and their implementation.
- 00:22 - 00:30 - [SLIDES] Understanding Image the human and neural network way, pseudo code on building network, Explanations from Bengio's book
- 00:30 - 1:00 - [SLIDES][CODE] Get to know convolutions, strides, pooling, padding and their syntax(to make it easy to understand the code later).
- 01:00 - 01:11 - [SLIDES][CODE] Introduction to TensorFlow, Tensors, Graphs,
- 01:11 - 01:20 - [SLIDES][CODE] Example usage of some regularly used TensorFlow functions.
- 01:20 - 02:20 - [SLIDES][CODE] Writing your own neural network.
- 02:20 - Workshop time end : Q and A
Note : [SLIDES] - it means there will be show of slides and talk |||| [SLIDES][CODE] - it means there will be show of slides, talk and code Also note , timings are tentative and it has been observed that they may vary at the time(mostly reduce) of presentation as by then one get's an understanding of the target audience in general.
- Some coding experience in Python.
- Know about deep learning or machine learning in general i.e some basic understanding of concepts.
- Understanding about Google Colab or Jupyter notebooks.
Environment setup :
To try on your own machine :
- Minimum of 2GB usable GPU available.
- Processor beyond i3 if no GPU available.
- Python 3.6 or higher installed with VSCode(or whatever code editor you prefer).
Recommended option :
- Google colab
- Most recent talk
- Notebook that will be used for workshop with minor changes
- Previous talk on same topic
- Link to the presentation for this topic
Ashwin worked as a AI and Deep Learning Engineer helping apply computer vision applications in the field of mobility, healthcare and industrial QC/QA. With around 2 years of total experience in computer vision and deep learning his research interests also include artificial neural networks and natural language processing. He has also served as a mentor for incubated startups by working with startup founders to upskill their workforce in the field of deep learning, computer vision.
He aims to utilize his skills to contribute to the open source world and help others learn by simultaneously learning and improving himself. His open source contributions include contributing to repositories of Tensorflow, ethicalML and other such open source organizations to name a few.