Deep Learning with Python

1.1 Deep Learning The Wrong Way

This advice is dead wrong as below:

  • You must have a strong foundation in linear algebra.
  • You must have a deep knowledge of traditional neural network techniques.
  • You really must know about probability and statistics.
  • You should really have a deep knowledge of machine learning.
  • You probably need to be a PhD in computer science.
  • You probably need 10 years of experience as a machine learning developer.

1.2 Deep Learning With Python

If you are interested in deep learning, start by developing and evaluating deep learning models. Then if you discover you really like it or have a knack for it, later you can step deeper and deeper into the background and theory, as you need it in order to serve you in developing better and more valuable results. This book is your ticket to jumping in and making a ruckus with deep learning.

There are two top numerical platforms for developing deep learning models, they are Theano developed by the University of Montreal and TensorFlow developed at Google. Both were developed for use in Python and both can be leveraged by the super simple to use Keras library. Keras wraps the numerical computing complexity of Theano and TensorFlow providing a concise API that we will use to develop our own neural network and deep learning models.

1.3 Book Organization

  • Lesson
  • Projects
  • Recipes

1.3.1 Lessons and Projects

Lessons are discrete and are focused on one topic, designed for you to complete in one sitting.

You lessons are divided into five parts:

  • Background
  • Multilayer Perceptrons
  • Advanced Multiplayer Percetrons and Keras
  • Convolutional Neural Networks
  • Recurrent Neural Networks

1.3.2 Part 2: Background

In this part you will learn about the Theano, TensorFlow and Keras libraies that lay the foundation for your deep learning journey and about how you can leverage very cheap Amzaon Web Service computing in order to develop and evaluate your own large models in the cloud.

This part of the book includes Numeric Library:

  • Introduction to the Theano Numerical Library.
  • Introduction to the TensorFlow Numerical Library
  • Introduction to the Keras Deep Learning Library
  • Project: Develop Large Models on GPUs Cheaply In the Cloud.

1.3.3 Part 3: Multilayer Perceptrons

In this part you will learn about feedforward neural networks that may be deep or not and how to expertly develop your own networks and evaluate them efficiently using Keras. This part of the book includes the following lessons:

  • Crash Course In Multillayer Perceptrons
  • Develop Your First Neural Network With Keras.
  • Evaluate The Performance of Deep Learning Models
  • Use Keras Models With Scikit-Learn For General Machine Learing.

These important lessons are tied together with three foundation projects. These projects demonstrate how you can quickly and efficiently develop neural network models for tabular data and provide project templates that you can use on your own regression and classification machine learning problems. These projects include:

  • Project: Multiclass Classification Problem
  • Project: Binary Classification Problem
  • Project: Regression Problem

1.3.4 Part 4: Advanced Multilayer Perceptrons

In this part you will learn about some of the more finer points of the Keras library and API for practical machine learning projects and some of the more important developments in applied neural networks that you need to know in order to deliver world class results. This part of the book includes the following lessons:

  • Save Your Models For Later With Network Serialization.
  • Keep The Best Models During Training With Checkpointing.
  • Understand Model Behavior During Training By Plotting History.
  • Reduce Overfitting With Dropout Regularization.
  • Lift Performance With Learning Rate Schedules.

1.3.5 Part 5: Convolutional Neural Networks

This part of the book includes the following lessons:

  • Crash Course In Convolutional Neural Networks.
  • Improve Model Performance With Image Augmentation.

The best way to learn about this impressive type of neural network model is to apply it. You will work through three larger projects and apply CNN to image data for object recognition and text data for sentiment classification.

  • Project: Handwritten Digit Recognition.
  • Project: Object Recognition in Photographs.
  • Project: Movie Review Sentiment Classification

1.3.6 Part 6: Recurrent Neural Networks

In this part you will receive a crash course in the dominant model for data with a sequence or time component and how you can best exploit the capabilities of the Keras API for your own projects. This part of the book includes the following lessons:

  • Crash Course In Recurrent Neural Networks.
  • Multilayer Perceptron Models for Time Series Problems.
  • LSTM Models for Time Series Problems.
  • Understanding State in LSTM Models for Sequence Prediction.

The best way to learn about this complex type of neural network model is to apply it. You will work through two larger projects and apply RNN to sequence classification and text generation.

  • Project: Sequence Classification of Movie Reviews.
  • Project: Text Generation With Alice in Wonderland.

After completing the lessons and projects in this part you will have the skills and the confidence of complete and working templates and recipes to tackle your own deep learning projects using recurrent neural networks.

1.3.8 Recipes

Building up a catalog of code recipes is an important part of your deep learning journey. Each time you learn about a new technique or new problem type, you should write up a short code recipe that demonstrates it. This will give you a starting point to use on your next deep learning or machine learning project. As part of this book you will receive a catalog of deep learning recipes. This includes recipes for all of the lessons presented in this book, as well as the complete code for all of the projects. You are strongly encouraged to add to and build upon this catalog of recipes as you expand your use and knowledge of deep learning in Python.

1.4 Requirements For This Book

1.4.1 Python and SciPy

Technical Requirements: The technical requirements for the code and tutorials in this book are as follows:

  • Python version 2 or 3 installed. This book was developed using Python version 2.7.11.
  • SciPy and NumPy installed. This book was developed with SciPy version 0.17.0 and NumPy version 1.11.0.
  • Matplotlib installed. This book was developed with Matplotlib version 1.5.1.
  • Pandas installed. This book was developed with Pandas version 0.18.0.
  • scikit-learn installed. This book was developed with scikit-learn 0.17.1.

1.4.2 Machine Learning

You do not need to be a machine learning expert, but it would be helpful if you knew how to navigate a small machine learning problem using scikit-learn. Basic concepts like cross validation and one hot encoding used in lessons and projects are described, but only briefly. There are resources to go into these topics in more detail at the end of the book, but some knowledge of these areas might make things easier for you.

1.4.3 Deep Learning

You do not need to know the math and theory of deep learning algorithms, but it would be helpful to have some basic idea of the field. You will get a crash course in neural network terminology and models, but we will not go into much detail. Again, there will be resources for more information at the end of the book, but it might be helpful if you can start with some idea about neural networks. Note: All tutorials can be completed on standard workstation hardware with a CPU. A GPU is not required. Some tutorials later in the book can be sped up significantly by running on the GPU and a suggestion is provided to consider using GPU hardware at the beginning of those sections. You can access GPU hardware easily and cheaply in the cloud and a step-by-step procedure is taught on how to do this in Chapter 5

1.5 Your Outcomes From Reading This Book

This book will lead you from being a developer who is interested in deep learning with Python to a developer who has the resources and capabilities to work through a new dataset end-to-end using Python and develop accurate deep learning models. Specifically, you will know:

1.6 What This Book is Not

  • This is not a deep learning textbook.
  • This is not an algorithm book.
  • This is not a Python programming book.

1.7 Summary

1.7.1 Next

Next up is Part II where you will take a whirlwind tour of the foundation libraries for deep learning in Python, namely the numerical libraries Theano and TensorFlow and the library you will be using throughout this book called Keras.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值