Better Deep Learning
Train Faster, Reduce Overfitting,
and Make Better Predictions
Jason Brownlee
i
Disclaimer
The information contained within this eBook is strictly for educational purposes. If you wish to apply
ideas contained in this eBook, you are taking full responsibility for your actions.
The author has made every eort to ensure the accuracy of the information within this book was
correct at time of publication. The author does not assume and hereby disclaims any liability to any
party for any loss, damage, or disruption caused by errors or omissions, whether such errors or
omissions result from accident, negligence, or any other cause.
No part of this eBook may be reproduced or transmitted in any form or by any means, electronic or
mechanical, recording or by any information storage and retrieval system, without written permission
from the author.
Acknowledgements
Special thanks to my proofreader Sarah Martin and my technical editors Andrei Cheremskoy, Michael
Sanderson, Arun Koshy.
Copyright
Better Deep Learning
©Copyright 2019 Jason Brownlee. All Rights Reserved.
Edition: v1.3
Contents
Copyright i
Contents ii
Preface iii
Introduction
Welcome v
Framework for Better Deep Learning
Diagnostic Learning Curves
I Better Learning
1 Improve Learning by Understanding Optimization
1.1 Neural Nets Learn a Mapping Function
1.2 Learning Network Weights Is Hard
1.3 Key Features of the Error Surface
1.4 Navigating the Non-Convex Error Surface
1.5 Implications for Training
1.6 Components of the Learning Algorithm
1.7 Further Reading
1.8 Summary
2 Congure Capacity with Nodes and Layers
2.1 Neural Network Model Capacity
2.2 Nodes and Layers Keras API
2.3 Model Capacity Case Study
2.4 Extensions
2.5 Further Reading
2.6 Summary
ii
CONTENTS iii
3 Congure Gradient Precision with Batch Size
3.1 Batch Size and Gradient Descent
3.2 Gradient Descent Keras API
3.3 Batch Size Case Study
3.4 Extensions
3.5 Further Reading
3.6 Summary
4 Congure What to Optimize with Loss Functi
Better Deep Learning _Jason Brownlee.pdf