具体描述
商品参数
| scikit-learn机器学习:常用算法原理及编程实战 |
| | 定价 | 59.00 |
| 出版社 | 机械工业出版社 |
| 版次 | 1 |
| 出版时间 | 2018年02月 |
| 开本 | 16 |
| 作者 | 黄永昌 |
| 装帧 | 平装 |
| 页数 | 0 |
| 字数 | 0 |
| ISBN编码 | 9787111590248 |
内容介绍
本书通过通俗易懂的语言、丰富的图示和生动的实例,拨开了笼罩在机器学习上方复杂的数学“乌云”,让读者以较低的代价和门槛轻松入门机器学习。
本书共分为11章,介绍了在Python环境下学习scikit-learn机器学习框架的相关知识,涵盖的主要内容有机器学习概述、Python机器学习软件包、机器学习理论基础、k-近邻算法、线性回归算法、逻辑回归算法、决策树、支持向量机、朴素贝叶斯算法、PCA 算法和k-均值算法等。
本书适合有一定编程基础的读者阅读,尤其适合想从事机器学习、人工智能、深度学习及机器人相关技术的程序员和爱好者阅读。另外,相关院校和培训机构也可以将本书作为教材使用。
目录
前言
第1章 机器学习介绍 1
1.1 什么是机器学习 1
1.2 机器学习有什么用 2
1.3 机器学习的分类 3
1.4 机器学习应用开发的典型步骤 4
1.4.1 数据采集和标记 4
1.4.2 数据清洗 5
1.4.3 特征选择 5
1.4.4 模型选择 5
1.4.5 模型训练和测试 5
1.4.6 模型性能评估和优化 5
1.4.7 模型使用 6
1.5 复习题 6
第2章 Python机器学习软件包 7
2.1 开发环境搭建 7
2.2 IPython简介 8
2.2.1 IPython基础 8
2.2.2 IPython图形界面 13
2.3 Numpy简介 15
2.3.1 Numpy数组 15
2.3.2 Numpy运算 19
2.4 Pandas简介 32
2.4.1 基本数据结构 32
2.4.2 数据排序 34
2.4.3 数据访问 34
2.4.4 时间序列 36
2.4.5 数据可视化 36
2.4.6 文件读写 38
2.5 Matplotlib简介 38
2.5.1 图形样式 38
2.5.2 图形对象 40
2.5.3 画图操作 46
2.6 scikit-learn简介 51
2.6.1 scikit-learn示例 51
2.6.2 scikit-learn一般性原理和通用规则 55
2.7 复习题 56
2.8 拓展学习资源 57
第3章 机器学习理论基础 58
3.1 过拟合和欠拟合 58
3.2 成本函数 59
3.3 模型准确性 60
3.3.1 模型性能的不同表述方式 61
3.3.2 交叉验证数据集 61
3.4 学习曲线 62
3.4.1 实例:画出学习曲线 62
3.4.2 过拟合和欠拟合的特征 65
3.5 算法模型性能优化 65
3.6 查准率和召回率 66
3.7 F1 Score 67
3.8 复习题 67
第4章 k-近邻算法 69
4.1 算法原理 69
4.1.1 算法优缺点 69
4.1.2 算法参数 70
4.1.3 算法的变种 70
4.2 示例:使用k-近邻算法进行分类 70
4.3 示例:使用k-近邻算法进行回归拟合 72
4.4 实例:糖尿病预测 74
4.4.1 加载数据 74
4.4.2 模型比较 75
4.4.3 模型训练及分析 77
4.4.4 特征选择及数据可视化 78
4.5 拓展阅读 80
4.5.1 如何提高k-近邻算法的运算效率 80
4.5.2 相关性测试 80
4.6 复习题 81
第5章 线性回归算法 83
5.1 算法原理 83
5.1.1 预测函数 83
5.1.2 成本函数 84
5.1.3 梯度下降算法 84
5.2 多变量线性回归算法 86
5.2.1 预测函数 86
5.2.2 成本函数 87
5.2.3 梯度下降算法 88
5.3 模型优化 89
5.3.1 多项式与线性回归 89
5.3.2 数据归一化 89
5.4 示例:使用线性回归算法拟合正弦函数 90
5.5 示例:测算房价 92
5.5.1 输入特征 92
5.5.2 模型训练 93
5.5.3 模型优化 94
5.5.4 学习曲线 95
5.6 拓展阅读 96
5.6.1 梯度下降迭代公式推导 96
5.6.2 随机梯度下降算法 96
5.6.3 标准方程 97
5.7 复习题 97
第6章 逻辑回归算法 98
6.1 算法原理 98
6.1.1 预测函数 98
6.1.2 判定边界 99
6.1.3 成本函数 100
6.1.4 梯度下降算法 102
6.2 多元分类 102
6.3 正则化 103
6.3.1 线性回归模型正则化 103
6.3.2 逻辑回归模型正则化 104
6.4 算法参数 104
6.5 实例:乳腺癌检测 106
6.5.1 数据采集及特征提取 106
6.5.2 模型训练 108
6.5.3 模型优化 110
6.5.4 学习曲线 111
6.6 拓展阅读 113
6.7 复习题 114
第7章 决策树 115
7.1 算法原理 115
7.1.1 信息增益 116
7.1.2 决策树的创建 119
7.1.3 剪枝算法 120
7.2 算法参数 121
7.3 实例:预测泰坦尼克号幸存者 122
7.3.1 数据分析 122
7.3.2 模型训练 123
7.3.3 优化模型参数 124
7.3.4 模型参数选择工具包 127
7.4 拓展阅读 130
7.4.1 熵和条件熵 130
7.4.2 决策树的构建算法 130
7.5 集合算法 131
7.5.1 自助聚合算法Bagging 131
7.5.2 正向激励算法boosting 131
7.5.3 随机森林 132
7.5.4 ExtraTrees算法 133
7.6 复习题 133
第8章 支持向量机 134
8.1 算法原理 134
8.1.1 大间距分类算法 134
8.1.2 松弛系数 136
8.2 核函数 138
8.2.1 *简单的核函数 138
8.2.2 相似性函数 140
8.2.3 常用的核函数 141
8.2.4 核函数的对比 142
8.3 scikit-learn里的SVM 144
8.4 实例:乳腺癌检测 146
8.5 复习题 149
第9章 朴素贝叶斯算法 151
9.1 算法原理 151
9.1.1 贝叶斯定理 151
9.1.2 朴素贝叶斯分类法 152
9.2 一个简单的例子 153
9.3 概率分布 154
9.3.1 概率统计的基本概念 154
9.3.2 多项式分布 155
9.3.3 高斯分布 158
9.4 连续值的处理 159
9.5 实例:文档分类 160
9.5.1 获取数据集 160
9.5.2 文档的数学表达 161
9.5.3 模型训练 163
9.5.4 模型评价 165
9.6 复习题 167
第10章 PCA算法 168
10.1 算法原理 168
10.1.1 数据归一化和缩放 169
10.1.2 计算协方差矩阵的特征向量 169
10.1.3 数据降维和恢复 170
10.2 PCA 算法示例 171
10.2.1 使用Numpy模拟PCA计算过程 171
10.2.2 使用sklearn进行PCA降维运算 173
10.2.3 PCA的物理含义 174
10.3 PCA 的数据还原率及应用 175
10.3.1 数据还原率 175
10.3.2 加快监督机器学习算法的运算速度 176
10.4 实例:人脸识别 176
10.4.1 加载数据集 176
10.4.2 一次失败的尝试 179
10.4.3 使用PCA来处理数据集 182
10.4.4 *终结果 185
10.5 拓展阅读 189
10.6 复习题 189
第11章 k-均值算法 190
11.1 算法原理 190
11.1.1 k-均值算法成本函数 191
11.1.2 随机初始化聚类中心点 191
11.1.3 选择聚类的个数 192
11.2 scikit-learn里的k-均值算法 192
11.3 使用k-均值对文档进行聚类分析 195
11.3.1 准备数据集 195
11.3.2 加载数据集 196
11.3.3 文本聚类分析 197
11.4 聚类算法性能评估 200
11.4.1 Adjust Rand Index 200
11.4.2 齐次性和完整性 201
11.4.3 轮廓系数 203
11.5 复习题 204
后记 205
《Python深度学习与人工智能应用实践》 内容简介: 本书旨在为读者构建一个扎实的深度学习理论基础,并结合Python丰富的生态系统,深入剖析现代人工智能的核心技术。从基础概念的梳理,到主流模型的设计与实现,再到实际应用场景的拓展,本书力求为开发者、研究者以及对人工智能充满热情的朋友们提供一条清晰的学习路径。我们关注的不仅是算法的“是什么”,更是“为什么”以及“如何”在真实世界中解决问题。 第一部分:深度学习基础理论与Python实现 本部分将带领读者从头开始,系统性地理解深度学习的基石。 神经网络的演进与构建: 我们将从简单的感知机模型入手,逐步介绍多层感知机(MLP)的结构,理解激活函数的作用(如Sigmoid, ReLU, Tanh),以及如何利用反向传播算法进行参数更新。我们将详细解释损失函数(如交叉熵、均方误差)在模型训练中的角色,以及优化器(如SGD, Adam, RMSprop)如何加速收敛并克服局部最优。此外,还会探讨正则化技术(如L1, L2, Dropout)在防止过拟合中的重要性。 卷积神经网络(CNN)原理与应用: 针对图像处理任务,CNN是不可或缺的工具。我们将深入讲解卷积层、池化层(最大池化、平均池化)的设计思想,理解卷积核(Filter)是如何提取图像特征的,以及感受野(Receptive Field)的概念。本书将详细解析经典的CNN架构,如LeNet-5, AlexNet, VGGNet, GoogLeNet (Inception) 和 ResNet,分析它们在层级结构、网络深度和参数共享等方面的创新之处。通过Python代码示例,读者将学习如何使用TensorFlow/Keras或PyTorch构建和训练自己的CNN模型,解决图像分类、目标检测和图像分割等问题。 循环神经网络(RNN)及其变种: 对于序列数据,RNN是处理文本、语音等信息的关键。我们将详细阐述RNN的循环机制,理解其在捕捉时序依赖性方面的优势和局限性。在此基础上,我们将重点介绍长短期记忆网络(LSTM)和门控循环单元(GRU)的内部结构,解析它们如何通过门控机制有效缓解梯度消失/爆炸问题,从而学习长距离依赖。本书将提供使用Python实现RNN、LSTM和GRU的实践代码,引导读者完成情感分析、机器翻译、文本生成等任务。 注意力机制(Attention Mechanism)与Transformer模型: 近年来,注意力机制彻底改变了序列建模的格局。我们将深入剖析注意力机制的原理,包括查询(Query)、键(Key)、值(Value)的概念,以及自注意力(Self-Attention)和跨注意力(Cross-Attention)的不同应用。在此基础上,我们将详细讲解Transformer模型的架构,理解其如何摒弃了RNN的循环结构,完全依赖于自注意力机制来处理序列信息。本书将重点关注Transformer在自然语言处理(NLP)领域的强大表现,如BERT、GPT系列等预训练模型的原理与微调方法。通过实践,读者将学习如何利用Transformer构建更强大的NLP模型。 生成对抗网络(GAN)及其衍生模型: GAN作为生成模型的一大突破,能够生成逼真的图像、文本甚至音频。我们将详细介绍GAN的基本框架,包括生成器(Generator)和判别器(Discriminator)如何相互博弈,实现逼真的数据生成。本书将深入讲解DCGAN(Deep Convolutional GAN)、StyleGAN、CycleGAN等经典GAN模型的改进和应用,涵盖图像生成、风格迁移、超分辨率等前沿方向。读者将有机会通过代码实践,体验从零开始构建和训练GAN模型的乐趣。 第二部分:人工智能核心技术与Python实践 本部分将拓展深度学习的应用范畴,深入探讨人工智能的其他关键技术,并强调Python在其中的重要作用。 机器学习基础回顾与Python工具链: 尽管本书重点是深度学习,但对传统机器学习算法的理解仍然至关重要。我们将简要回顾监督学习(回归、分类)、无监督学习(聚类、降维)和强化学习的基本概念。在此基础上,本书将重点介绍Python在机器学习领域的强大工具链,包括NumPy(数值计算)、Pandas(数据处理)、Matplotlib/Seaborn(数据可视化)等。我们将重点讲解Scikit-learn库的常用功能,如数据预处理(特征缩放、编码)、模型选择(交叉验证、网格搜索)以及基础算法的实现(如线性回归、逻辑回归、支持向量机、决策树、随机森林、K-Means等),为读者提供一个扎实的实践起点。 自然语言处理(NLP)进阶: 除了Transformer模型,我们将深入探讨NLP的其他重要技术。包括词嵌入(Word Embeddings)如Word2Vec、GloVe的原理与应用,词性标注(Part-of-Speech Tagging)、命名实体识别(Named Entity Recognition)等任务的常见模型与实现。我们将介绍如何利用NLTK、spaCy等Python库进行文本预处理、分词、词性分析等操作。此外,还会涉及主题模型(如LDA)在文本挖掘中的应用。 计算机视觉(CV)进阶: 在CNN的基础上,我们将进一步探索计算机视觉的更多前沿技术。例如,目标检测算法(如R-CNN系列、YOLO、SSD)的原理与实现,语义分割与实例分割(如FCN, U-Net, Mask R-CNN)的技术细节,以及图像生成、图像修复、姿态估计等应用。我们将介绍OpenCV等图像处理库的使用,以及如何在实际项目中部署和优化CV模型。 强化学习(RL)导论与实践: 强化学习作为人工智能的重要分支,在游戏AI、机器人控制等领域展现出巨大潜力。我们将介绍强化学习的基本概念,如智能体(Agent)、环境(Environment)、状态(State)、动作(Action)、奖励(Reward)以及策略(Policy)。本书将详细讲解Q-learning、SARSA等经典强化学习算法,并介绍深度强化学习(DRL)的概念,如DQN(Deep Q-Network)如何结合深度学习解决高维状态空间问题。读者将通过Python代码实现简单的RL环境和算法,理解RL的工作流程。 模型部署与优化: 理论知识与实际应用之间存在鸿沟。本书将指导读者如何将训练好的模型部署到实际环境中。我们将介绍模型序列化(如Pickle, HDF5, ONNX)的方法,以及如何在服务器端(如Flask, FastAPI)或边缘设备上进行推理。此外,还会探讨模型压缩、量化、剪枝等技术,以提高模型的推理速度和效率,使其能够更好地服务于实际应用。 第三部分:人工智能应用场景与案例分析 本部分将结合实际案例,展示深度学习和人工智能如何在各个领域发挥作用。 智能推荐系统: 分析协同过滤、基于内容的推荐以及混合推荐等策略,并探讨如何利用深度学习模型(如矩阵分解、深度神经网络)构建更精准的推荐系统。 智能问答与对话系统: 介绍基于规则、信息检索和深度学习的问答系统,以及端到端的对话系统设计。 自动驾驶与机器人技术: 探讨计算机视觉在感知层面的应用,如障碍物检测、车道线识别,以及路径规划和控制策略。 医疗健康领域的AI应用: 如医学影像分析、疾病诊断辅助、药物研发等。 金融领域的AI应用: 如信用评分、欺诈检测、量化交易等。 学习方法与本书特色: 本书强调理论与实践相结合。每一章节都配有清晰的Python代码示例,读者可以跟随代码进行动手实践,加深对算法原理的理解。我们鼓励读者在学习过程中积极思考,尝试修改参数、调整模型结构,探索不同的解决方案。本书内容由浅入深,循序渐进,旨在为初学者提供一条易于上手的学习路径,同时也为有一定基础的开发者提供深入的理论探讨和前沿的技术视野。本书力求内容详实,语言通俗易懂,避免使用过于晦涩的术语,力求让每一位读者都能在人工智能的海洋中有所收获。 目标读者: 对人工智能、机器学习、深度学习感兴趣的在校学生。 希望提升编程技能、掌握AI应用开发的软件工程师。 需要将AI技术应用于自身业务的各行业从业者。 希望深入理解AI技术原理的研究人员。 任何对创造智能系统充满好奇和热情的个人。 通过阅读本书,您将不仅掌握深度学习的核心算法和Python实现技巧,更能培养独立解决AI问题的能力,为您的职业发展和个人探索开启无限可能。