Deep Learning with Keras: the chapter code for a Packt book, pinned to TensorFlow 1
Code repository for Deep Learning with Keras published by Packt
At a glance
- What is it?
- This repository holds the notebooks and supporting files for the Packt book Deep Learning with Keras, organised as Chapter01 through Chapter08 plus an Appendix. The stated dependency floors are TensorFlow 1.0.0, Keras 2.0.2, Matplotlib 1.5.3, scikit-learn 0.18.1 and NumPy 1.12.1, which is the main thing to know before you try to run any of it.
- Who is it for?
- Deep Learning with Keras suits a reader working through the book who wants the runnable code for each chapter alongside the text, and who is prepared to work in an older TensorFlow and Keras stack rather than a current one.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Activity is slowing. The repository last received commits 6 months ago.
- What is it written in?
- Mainly Jupyter Notebook, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on November 7, 2026, and from our analysis. They are not legal advice.
Star history
- PacktPublishing/Deep-Learning-with-Keras1,048 ★ · +0
| Repository | 2026-10-21 | 2026-11-07 |
|---|---|---|
| PacktPublishing/Deep-Learning-with-Keras | 1k | 1k |
0 Stars in the last 17 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
What the repository is: the companion code for a published book
This is the code repository for Deep Learning with Keras, published by Packt, and the README states that it contains all the supporting project files necessary to work through the book from start to finish. That is the whole scope. There is no library here, no package to install and no API to call. The value is that each chapter's code is in the repository rather than typed from the book, so a reader can run it, change it and see what happens, which is the difference between a book about neural networks and a book you can break things with. The primary language is Jupyter Notebook, the licence is MIT, and the repository is not archived, with the last push on 2026-04-22 and no GitHub releases, since a book repository is versioned by the book edition rather than by tag.
The folder naming is the navigation, one directory per chapter
The Instructions and Navigation section is short and the convention is simple. All of the code is organized into folders, and each folder starts with a number followed by the application name, for example Chapter02. The top level of the repository shows the full map: Chapter01 through Chapter08, an Appendix/ directory, a Docker/ directory, and the README, LICENSE and .gitignore. The numeric prefix is the point, because it means the directory order is the reading order and there is no index to consult. It also means the Appendix is not part of the chapter sequence, which is a hint that it holds reference material rather than a tutorial. For a reader arriving at a specific topic, the chapter directory is the only address you need.
The stack the code was written against, and it is old
To follow through the chapters you need TensorFlow 1.0.0 or higher, Keras 2.0.2 or higher, Matplotlib 1.5.3 or higher, scikit-learn 0.18.1 or higher and NumPy 1.12.1 or higher. The floors are the interesting part. TensorFlow 1.0 is the pre-2.0 era, with graph sessions and feed dictionaries, and Keras 2.0.2 is from the same period. A reader with a current environment, where Keras 3 is the version in TensorFlow and the APIs have moved, will find that the code does not run as written without backporting pins. The sample in the README is the tell, since it builds a Sequential model and adds a Dense layer with an input_dim and a kernel_initializer, which is the pre-Keras 3 model definition style, and the modern equivalent would use an Input layer instead of input_dim.
from keras.models import Sequential
model = Sequential()
model.add(Dense(12, input_dim=8, kernel_initializer='random_uniform'))What the book covers, and therefore what the notebooks contain
The About the Book section maps out the syllabus, and it tells you which notebooks are worth opening. It starts with supervised learning algorithms, simple linear regression, the classical multilayer perceptron, and more sophisticated deep convolutional networks. It then covers unsupervised learning algorithms such as autoencoders, restricted Boltzmann machines and deep belief networks. Recurrent networks and long short term memory networks are explained in detail. The image processing part covers recognition of handwritten digital images, classification of images into different categories, and advanced object recognition with related image annotations, and an example of identifying salient points for face detection is also provided. That spread is a curriculum in progressive difficulty, so the chapter numbering is a genuine dependency order rather than a convenience.
The hardware list, which is a good indicator of the era
The hardware specifications are listed with the same specificity as the software. Either 32-bit or 64-bit architecture, a 2 GHz or faster CPU, 4 GB of RAM, and at least 10 GB of hard disk space available. Read those numbers as a document rather than a recommendation, because they describe the machine the book was written against, and every one of them is now a low bar. A 4 GB RAM ceiling and 10 GB of disk in particular tells you the notebooks are small and CPU oriented, which fits a book about model architecture rather than about training at scale. It also means the code will not ask your machine for much, so the constraint on running these notebooks today is the library versions rather than the hardware.
The Docker directory, which is the practical route to a working environment
The repository carries a Docker/ directory at the top level, and it is the piece of the repository that most affects whether you can actually run the code. Since the dependency floors are pinned to a TensorFlow 1 era that no longer installs cleanly everywhere, a container that captures the intended versions is the difference between spending an evening on the notebooks and spending an evening on the notebooks plus an afternoon on dependency resolution. The README does not document the Docker directory in detail, so the images are there to be inspected rather than to be followed step by step, and the environment file at the repository root is the other half of that picture. For a book repository this is a sensible amount of infrastructure, and for a reader it is the piece that determines whether the code is usable or a historical artefact.
What this repository is not, and how it sits beside the other Packt titles
It is worth being clear that this is not a maintained framework and not a tutorial you can follow without the book. The README links the book itself on Packt with the product identifiers, and it points at related titles, Deep Learning with TensorFlow, Python Deep Learning and Deep Learning with Hadoop, which tells you the catalogue position. The publishing arrangement is also visible in the README, with a link to claim a DRM-free PDF of the book if you have already bought a print or Kindle version, and a feedback form. So the code is a companion to a purchase, and the MIT licence on the repository covers the code rather than the text. The topics in the repository metadata are the usual Packt set, and the repository carries no releases, so a reader tracking a specific chapter should note the commit rather than a version.
Editorial conclusion
Deep Learning with Keras suits a reader working through the book who wants the runnable code for each chapter alongside the text, and who is prepared to work in an older TensorFlow and Keras stack rather than a current one. It is the wrong choice as a source of current Keras idioms, because the dependency floors are pinned to the TensorFlow 1 era and the example code uses the Sequential and Dense style of that period, and a poor fit for a project that needs to run today without an environment rebuild. Before you start, read the requirements list rather than the notebook, since TensorFlow 1.0.0 and Keras 2.0.2 are the floors and a modern environment will not satisfy them by default, and note the repository carries a Docker directory, which is the most practical way to reproduce the intended environment.
Frequently asked questions
What is the Packt Deep Learning with Keras repository?
It is the code repository for the book Deep Learning with Keras published by Packt, containing all the supporting project files necessary to work through the book from start to finish. The primary language is Jupyter Notebook and the code is MIT licensed.
How is the code organised in the Deep Learning with Keras repository?
All of the code is organized into folders, and each folder starts with a number followed by the application name, for example Chapter02. The repository has Chapter01 through Chapter08, an Appendix directory and a Docker directory.
What software do I need to run the Deep Learning with Keras code?
TensorFlow 1.0.0 or higher, Keras 2.0.2 or higher, Matplotlib 1.5.3 or higher, scikit-learn 0.18.1 or higher and NumPy 1.12.1 or higher. The hardware listed is a 32-bit or 64-bit architecture, a 2 GHz or faster CPU, 4 GB of RAM and at least 10 GB of disk space.
What topics do the Deep Learning with Keras notebooks cover?
Supervised learning including linear regression, multilayer perceptrons and deep convolutional networks, unsupervised learning including autoencoders, restricted Boltzmann machines and deep belief networks, recurrent networks and LSTM, and image processing covering handwritten digit recognition, image classification, object recognition with image annotations and salient point detection for faces.
Can I get the book text as a free PDF?
The README states that if you have already purchased a print or Kindle version you can get a DRM-free PDF version at no cost by following the claim link. The repository code itself is MIT licensed, which covers the code rather than the text.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/packtpublishing-deep-learning-with-keras)Star history chart for your README
[](https://hysenlabs.com/projects/packtpublishing-deep-learning-with-keras)Was this useful?