Python Neural Network Programming cover

Python Neural Network Programming

Rating 4.7
Chapters
40
Series
Asynchronous Books · Deep Learning Series
ISBN
9787115474810

Tags

Summary

Python Neural Network Programming is the Chinese translation of Make Your Own Neural Network by British technical author Tariq Rashid, translated by Lin Ci and published by Posts & Telecom Press in April 2018 (under the Asynchronous Books imprint). The book has three chapters and two appendices. Chapter 1 starts from the simplest predictor and linear classifier, gradually introducing the neuron model, multilayer networks, matrix multiplication, backpropagation, and weight updates, using numerous hand-drawn-style illustrations and concrete numerical calculations to explain the mathematics of neural networks thoroughly. Chapter 2 moves into hands-on practice, covering the basics of Python and IPython and guiding readers to build a three-layer neural network from scratch in Python, then train and test it on the MNIST handwritten-digit dataset. Chapter 3 explores further, for example testing the network with your own handwritten digits, observing the patterns in the trained network's internal weights, and augmenting training data by rotating images to improve performance, before concluding with a summary and outlook. Appendix A introduces the calculus basics used in the book in an accessible way, and Appendix B explains how to install IPython on a Raspberry Pi and run the neural network there. At about 200 pages, the book is positioned as an introductory text that "requires no advanced mathematics or computer science background"; with only middle-school math, readers can follow along and complete a network that recognizes handwritten digits, making it a good starting point for understanding how neural networks work under the hood.

Editor's review

市面上讲深度学习的书,大多一上来就是框架、张量、自动求导,让人只见 API 不见原理。这本书偏偏反其道而行:作者用“一台简单的预测机”这样的玩具模型起步,一步一步加节点、加层、加误差回传,最后你真的会用纯 Python(只靠 numpy 一类的少量依赖)写出一个能识别手写数字的三层神经网络。 它的难得之处有两点。一是把数学讲“可视化”了——矩阵乘法和反向传播不是甩公式,而是配着数字例子和手绘图逐格演算,读者能看清每个权重是怎么被推动的。二是门槛低——作者明确面向非专家,只需要中学数学,连微积分都在附录里临时补课;做实验甚至可以在树莓派上跑完。 作为系列早期的口碑之作,它在豆瓣上长期保持在 9 分以上。如果你学完以后仍说不清“梯度下降到底在做什么”,这本书很可能补上那块最关键的拼图。

Who it's for

A good fit for

  • 刚接触机器学习、想搞懂神经网络底层原理的初学者
  • 会一点 Python、希望亲手从零实现一个神经网络的自学者
  • 数学基础停留在中学水平、被公式劝退的转行者
  • 想把神经网络概念讲给学生或团队听的高校师生与培训者

Not a good fit for

  • 希望直接学习 PyTorch、TensorFlow 等现代框架工程实践的人
  • 需要卷积网络、Transformer、大模型等前沿进阶内容的读者
  • 偏好严谨数学推导与形式化证明的数学/计算机专业研究者

Reading tips

  1. 先把第1章的每个数值例子亲手算一遍,再看第2章的代码,理解会更牢。
  2. 务必动手在本地运行第2章代码,用自己的手写数字测一测,比只读不练收获大得多。
  3. 数学吃力的读者可先跳过附录A,遇到反向传播卡住时再回头补微积分与链式法则。
  4. 读完可尝试替换数据集或增加一层隐藏层,观察正确率变化,把书里的实验变成自己的实验。

About the publisher

Posts & Telecom Press China · Founded in 1953

Posts & Telecom Press is known for its strengths in science and technology, computing, and information and communications titles, and has extended its publishing into photography, art, software learning, and inspirational growth, giving it a fairly diverse range. Its catalog includes computing and communications works such as Refactoring and Patterns (Revised Edition) and Huawei Switch Learning Guide (Second Edition), alongside bilingual collector's editions such as The Little Prince (Chinese-English-French illustrated collector's edition), The Great Gatsby, and Three Days to See. Beijing Ten Years: 1980-1990 and Ghost Blade: WLOP Personal Illustration Collection reflect its presence in photography and art. Its authors include Antoine de Saint-Exupéry, Helen Keller, Joshua Kerievsky, Wang Da, Zhang Zhaozeng, and WLOP.

Contents

  1. Chapter 1 How Neural Networks Work
  2. 1.1 Every Man Has His Weakness
  3. 1.2 A Simple Predictor
  4. 1.3 Classifiers and Predictors Are Not So Different
  5. 1.4 Training a Simple Classifier
  6. 1.5 Sometimes One Classifier Is Not Enough
  7. 1.6 Neurons—Nature's Computing Machines
  8. 1.7 Tracing Signals in a Neural Network
  9. 1.8 In All Honesty, Matrix Multiplication Is Very Useful
  10. 1.9 An Example of a Three-Layer Neural Network Using Matrix Multiplication
  11. 1.10 Learning Weights from Multiple Nodes
  12. 1.11 Backpropagating Error from Multiple Output Nodes
  13. 1.12 Backpropagating Error Through More Layers
  14. 1.13 Backpropagating Error Using Matrix Multiplication
  15. 1.14 How We Actually Update Weights
  16. 1.15 A Successful Weight-Update Example
  17. 1.16 Preparing Data
  18. Chapter 2 DIY with Python
  19. 2.1 Python
  20. 2.2 Interactive Python = IPython
  21. 2.3 Starting with Python Elegantly
  22. 2.4 Building a Neural Network with Python
  23. 2.5 The MNIST Handwritten-Digit Dataset
  24. Chapter 3 Fascinating Explorations
  25. 3.1 Your Own Handwritten Digits
  26. 3.2 Inside the Neural Network's Brain
  27. 3.3 Creating New Training Data: Rotating Images
  28. 3.4 Conclusion
  29. Appendix A A Brief Introduction to Calculus
  30. A.1 A Straight Line
  31. A.2 A Slanted Line
  32. A.3 A Curve
  33. A.4 Hand-Drawn Calculus
  34. A.5 Calculus Not Hand-Drawn
  35. A.6 Calculus Without Drawing Graphs
  36. A.7 Patterns
  37. A.8 Functions of Functions
  38. Appendix B Working with a Raspberry Pi
  39. B.1 Installing IPython
  40. B.2 Making Sure Everything Works

FAQ

这本书需要什么数学基础?
作者定位为只需中学数学,读者会四则运算与基本的函数概念即可上手。书中用到的微积分知识集中在附录A中补充讲解,线性代数中的矩阵乘法也在正文里从头演示,不需要高等数学或计算机专业背景。
书里的代码是 Python 2 还是 Python 3?
原书使用 Python 3 编写,正文以 IPython 交互式环境讲解,仅依赖 numpy 等少量库,代码量不大,便于逐行读懂并复现,可在普通笔记本甚至树莓派上运行。
和《深度学习入门:基于Python的理论与实现》比有什么区别?
两者都是入门书。本书更聚焦“从零手写最基础的三层网络”,篇幅更短、数学门槛更低、讲解更像对话;后者覆盖面更广,包含卷积网络等内容,且代码实现更工程化。可以先用本书打底,再读后者扩展。
这本书讲的是哪个数据集?能识别什么?
书中使用经典的 MNIST 手写数字数据集进行训练和测试,最终实现一个小型三层神经网络对手写数字进行分类识别,并引导读者观察网络内部权重、用自己手写的数字做测试。
这本书有繁体中文版吗?
有的。繁体中文版名为《類神經網路實戰:使用 Python》,由博碩文化出版,同样译自《Make Your Own Neural Network》,简体版则由人民邮电出版社于 2018 年出版。

Comments

Find this book

This site is an index: you start “Search all sources” in your browser, and the entries it lists all point to third-party sites; please judge their availability yourself.

More by the same author

Top rated in the same category