《Programming Machine Learning》这本书是为开发者编写的机器学习入门书籍,旨在帮助开发者理解机器学习的基本原理,并能够编写自己的机器学习程序。书中的例子使用Python语言,从最基础的线性回归开始,逐步引导读者构建复杂的机器学习系统。内容包括监督学习、神经网络和深度学习,并且所有代码都是从零开始编写的,以帮助读者深入理解每一行代码的含义。
目录
Early Praise for Programming Machine Learning
- 引言部分,包括多个对本书的高度评价。
Contents
- Acknowledgments (致谢)
- How the Heck Is That Possible? (机器学习的神奇之处)
Part I — From Zero to Image Recognition
-
How Machine Learning Works (机器学习的工作原理)
- Programming vs. Machine Learning (编程与机器学习的对比)
- Supervised Learning (监督学习)
- The Math Behind the Magic (背后的数学原理)
- Setting Up Your System (系统设置)
-
Your First Learning Program (你的第一个学习程序)
- Getting to Know the Problem (了解问题)
- Coding Linear Regression (编写线性回归代码)
- Adding a Bias (添加偏差)
-
Walking the Gradient (梯度下降)
- Our Algorithm Doesn’t Cut It (我们的算法不够好)
- Gradient Descent (梯度下降)
- Hands On: Basecamp Overshooting (实践:基准站点过冲)
-
Hyperspace! (高维空间)
- Adding More Dimensions (添加更多维度)
- Matrix Math (矩阵数学)
- Upgrading the Learner (升级学习器)
- Hands On: Field Statistician (实践:现场统计员)
-
A Discerning Machine (辨别机器)
- Where Linear Regression Fails (线性回归的局限)
- Invasion of the Sigmoids (S形曲线的引入)
- Classification in Action (分类实践)
-
Getting Real (走向现实)
- Data Come First (数据优先)
- Our Own MNIST Library (我们的MNIST库)
- The Real Thing (实际操作)
-
The Final Challenge (最后的挑战)
- Going Multiclass (多类分类)
- Moment of Truth (真相时刻)
-
The Perceptron (感知器)
- Enter the Perceptron (引入感知器)
- Assembling Perceptrons (组装感知器)
- Where Perceptrons Fail (感知器的局限)
Part II — Neural Networks
-
Designing the Network (设计网络)
- Assembling a Neural Network from Perceptrons (用感知器组装神经网络)
- Enter the Softmax (引入Softmax)
- Hands On: Network Adventures (实践:网络冒险)
-
Building the Network (构建网络)
- Coding Forward Propagation (编码前向传播)
- Cross Entropy (交叉熵)
- Hands On: Time Travel Testing (实践:时光旅行测试)
-
Training the Network (训练网络)
- The Case for Backpropagation (反向传播的必要性)
- Applying Backpropagation (应用反向传播)
-
How Classifiers Work (分类器的工作原理)
- Tracing a Boundary (追踪边界)
- Bending the Boundary (弯曲边界)
-
Batchin’ Up (批量处理)
- Learning, Visualized (可视化学习)
- Batch by Batch (逐批处理)
-
The Zen of Testing (测试的禅意)
- The Threat of Overfitting (过拟合的威胁)
- A Testing Conundrum (测试难题)
-
Let’s Do Development (开始开发)
- Preparing Data (准备数据)
- Tuning Hyperparameters (调整超参数)
Part III — Deep Learning
-
A Deeper Kind of Network (更深层的网络)
- Building a Neural Network with Keras (用Keras构建神经网络)
- Making It Deep (使其变深)
-
Defeating Overfitting (战胜过拟合)
- Overfitting Explained (解释过拟合)
- Regularizing the Model (正则化模型)
-
Taming Deep Networks (驯服深度网络)
- Understanding Activation Functions (理解激活函数)
- Adding More Tricks to Your Bag (添加更多技巧)
-
Beyond Vanilla Networks (超越基本网络)
- The CIFAR-10 Dataset (CIFAR-10数据集)
- The Building Blocks of CNNs (卷积神经网络的构建块)
-
Into the Deep (深入探索)
- The Rise of Deep Learning (深度学习的崛起)
- Unreasonable Effectiveness (非凡的效果)
Appendices
A1. Just Enough Python (足够的Python) - What Python Looks Like (Python的样子) - Python’s Building Blocks (Python的构建块)
A2. The Words of Machine Learning (机器学习的术语) - Index (索引)