零基础学机器学习

零基础学机器学习

立即阅读
手机扫码
  • 微信扫一扫

    关注微信公众号

编辑推荐

轻松入门机器学习,理论实战并重,适合零基础学习者。

内容简介

本书通过AI“小白”小冰拜师程序员咖哥学习机器学习的对话展开,内容包括:机器学习快速上手路径、数学和Python基础知识、机器学习基础算法(线性回归和逻辑回归)、深度神经网络、卷积神经网络、循环神经网络、经典算法、集成学习、无监督和半监督等非监督学习类型、强化学习实战等内容,以及相关实战案例等。

作者简介

黄佳,新加坡埃森哲公司高级顾问,人工智能专家,机器学习和云计算高级工程师。计算机世界奖学金获得者,新加坡政府奖学金获得者。黄佳先生IT从业近20年,参与过公共事业、医疗、金融等多领域大型人工智能项目,对政府、企业和事业单位的数据智能化项目如何成功落地有着非常深刻的思考和洞见。

章节目录

版权信息

版 权

内 容 提 要

推荐语

前 言

资源与支持

引 子 AI菜鸟的挑战——100天上线智能预警系统

第1课 机器学习快速上手路径——唯有实战

1.1 机器学习的家族谱

1.1.1 新手入门机器学习的3个好消息

1.1.2 机器学习就是从数据中发现规律

1.1.3 机器学习的类别——监督学习及其他

1.1.4 机器学习的重要分支——深度学习

1.1.5 机器学习新热点——强化学习

1.1.6 机器学习的两大应用场景——回归与分类

1.1.7 机器学习的其他应用场景

1.2 快捷的云实战学习模式

1.2.1 在线学习平台上的机器学习课程

1.2.2 用Jupyter Notebook直接实战

1.2.3 用Google Colab开发第一个机器学习程序

1.2.4 在Kaggle上参与机器学习竞赛

1.2.5 在本机上“玩”机器学习

1.3 基本机器学习术语

1.3.1 特征

1.3.2 标签

1.3.3 模型

1.4 Python和机器学习框架

1.4.1 为什么选择用Python

1.4.2 机器学习和深度学习框架

1.5 机器学习项目实战架构

1.5.1 第1个环节:问题定义

1.5.2 第2个环节:数据的收集和预处理

1.5.3 第3个环节:选择机器学习模型

1.5.4 第4个环节:训练机器,确定参数

1.5.5 第5个环节:超参数调试和性能优化

1.6 本课内容小结

1.7 课后练习

第2课 数学和Python基础知识——一天搞定

2.1 函数描述了事物间的关系

2.1.1 什么是函数

2.1.2 机器学习中的函数

2.2 捕捉函数的变化趋势

2.2.1 连续性是求导的前提条件

2.2.2 通过求导发现y如何随x而变

2.2.3 凸函数有一个全局最低点

2.3 梯度下降是机器学习的动力之源

2.3.1 什么是梯度

2.3.2 梯度下降:下山的隐喻

2.3.3 梯度下降有什么用

2.4 机器学习的数据结构——张量

2.4.1 张量的轴、阶和形状

2.4.2 标量——0D(阶)张量

2.4.3 向量——1D(阶)张量

2.4.4 矩阵——2D(阶)张量

2.4.5 序列数据 ——3D(阶)张量

2.4.6 图像数据 ——4D(阶)张量

2.4.7 视频数据——5D(阶)张量

2.4.8 数据的维度和空间的维度

2.5 Python的张量运算

2.5.1 机器学习中张量的创建

2.5.2 通过索引和切片访问张量中的数据

2.5.3 张量的整体操作和逐元素运算

2.5.4 张量的变形和转置

2.5.5 Python中的广播

2.5.6 向量和矩阵的点积运算

2.6 机器学习的几何意义

2.6.1 机器学习的向量空间

2.6.2 深度学习和数据流形

2.7 概率与统计研究了随机事件的规律

2.7.1 什么是概率

2.7.2 正态分布

2.7.3 标准差和方差

2.8 本课内容小结

2.9 课后练习

第3课 线性回归——预测网店的销售额

3.1 问题定义:小冰的网店广告该如何投放

3.2 数据的收集和预处理

3.2.1 收集网店销售额数据

3.2.2 数据读取和可视化

3.2.3 数据的相关分析

3.2.4 数据的散点图

3.2.5 数据集清洗和规范化

3.2.6 拆分数据集为训练集和测试集

3.2.7 把数据归一化

3.3 选择机器学习模型

3.3.1 确定线性回归模型

3.3.2 假设(预测)函数——h(x)

3.3.3 损失(误差)函数——L(w,b)

3.4 通过梯度下降找到最佳参数

3.4.1 训练机器要有正确的方向

3.4.2 凸函数确保有最小损失点

3.4.3 梯度下降的实现

3.4.4 学习速率也很重要

3.5 实现一元线性回归模型并调试超参数

3.5.1 权重和偏置的初始值

3.5.2 进行梯度下降

3.5.3 调试学习速率

3.5.4 调试迭代次数

3.5.5 在测试集上进行预测

3.5.6 用轮廓图描绘L、w和b的关系

3.6 实现多元线性回归模型

3.6.1 向量化的点积运算

3.6.2 多变量的损失函数和梯度下降

3.6.3 构建一个线性回归函数模型

3.6.4 初始化权重并训练机器

3.7 本课内容小结

3.8 课后练习

第4课 逻辑回归——给病患和鸢尾花分类

4.1 问题定义:判断客户是否患病

4.2 从回归问题到分类问题

4.2.1 机器学习中的分类问题

4.2.2 用线性回归+阶跃函数完成分类

4.2.3 通过Sigmiod函数进行转换

4.2.4 逻辑回归的假设函数

4.2.5 逻辑回归的损失函数

4.2.6 逻辑回归的梯度下降

4.3 通过逻辑回归解决二元分类问题

4.3.1 数据的准备与分析

4.3.2 建立逻辑回归模型

4.3.3 开始训练机器

4.3.4 测试分类结果

4.3.5 绘制损失曲线

4.3.6 直接调用Sklearn库

4.3.7 哑特征的使用

4.4 问题定义:确定鸢尾花的种类

4.5 从二元分类到多元分类

4.5.1 以一对多

4.5.2 多元分类的损失函数

4.6 正则化、欠拟合和过拟合

4.6.1 正则化

4.6.2 欠拟合和过拟合

4.6.3 正则化参数

4.7 通过逻辑回归解决多元分类问题

4.7.1 数据的准备与分析

4.7.2 通过Sklearn实现逻辑回归的多元分类

4.7.3 正则化参数——C值的选择

4.8 本课内容小结

4.9 课后练习

第5课 深度神经网络——找出可能流失的客户

5.1 问题定义:咖哥接手的金融项目

5.2 神经网络的原理

5.2.1 神经网络极简史

5.2.2 传统机器学习算法的局限性

5.2.3 神经网络的优势

5.3 从感知器到单隐层网络

5.3.1 感知器是最基本的神经元

5.3.2 假设空间要能覆盖特征空间

5.3.3 单神经元特征空间的局限性

5.3.4 分层:加入一个网络隐层

5.4 用Keras单隐层网络预测客户流失率

5.4.1 数据的准备与分析

5.4.2 先尝试逻辑回归算法

5.4.3 单隐层神经网络的Keras实现

5.4.4 训练单隐层神经网络

5.4.5 训练过程的图形化显示

5.5 分类数据不平衡问题:只看准确率够用吗

5.5.1 混淆矩阵、精确率、召回率和F1分数

5.5.2 使用分类报告和混淆矩阵

5.5.3 特征缩放的魔力

5.5.4 阈值调整、欠采样和过采样

5.6 从单隐层神经网络到深度神经网络

5.6.1 梯度下降:正向传播和反向传播

5.6.2 深度神经网络中的一些可调超参数

5.6.3 梯度下降优化器

5.6.4 激活函数:从Sigmoid到ReLU

5.6.5 损失函数的选择

5.6.6 评估指标的选择

5.7 用Keras深度神经网络预测客户流失率

5.7.1 构建深度神经网络

5.7.2 换一换优化器试试

5.7.3 神经网络正则化:添加Dropout层

5.8 深度神经网络的调试及性能优化

5.8.1 使用回调功能

5.8.2 使用TensorBoard

5.8.3 神经网络中的过拟合

5.8.4 梯度消失和梯度爆炸

5.9 本课内容小结

5.10 课后练习

第6课 卷积神经网络——识别狗狗的图像

6.1 问题定义:有趣的狗狗图像识别

6.2 卷积网络的结构

6.3 卷积层的原理

6.3.1 机器通过“模式”进行图像识别

6.3.2 平移不变的模式识别

6.3.3 用滑动窗口抽取局部特征

6.3.4 过滤器和响应通道

6.3.5 对特征图进行卷积运算

6.3.6 模式层级结构的形成

6.3.7 卷积过程中的填充和步幅

6.4 池化层的功能

6.5 用卷积网络给狗狗图像分类

6.5.1 图像数据的读入

6.5.2 构建简单的卷积网络

6.5.3 训练网络并显示误差和准确率

6.6 卷积网络性能优化

6.6.1 第一招:更新优化器并设置学习速率

6.6.2 第二招:添加Dropout层

6.6.3 “大杀器”:进行数据增强

6.7 卷积网络中特征通道的可视化

6.8 各种大型卷积网络模型

6.8.1 经典的VGGNet

6.8.2 采用Inception结构的GoogLeNet

6.8.3 残差网络ResNet

6.9 本课内容小结

6.10 课后练习

第7课 循环神经网络——鉴定留言及探索系外行星

7.1 问题定义:鉴定评论文本的情感属性

7.2 循环神经网络的原理和结构

7.2.1 什么是序列数据

7.2.2 前馈神经网络处理序列数据的局限性

7.2.3 循环神经网络处理序列问题的策略

7.2.4 循环神经网络的结构

7.3 原始文本如何转化成向量数据

7.3.1 文本的向量化:分词

7.3.2 通过One-hot编码分词

7.3.3 词嵌入

7.4 用SimpleRNN鉴定评论文本

7.4.1 用Tokenizer给文本分词

7.4.2 构建包含词嵌入的SimpleRNN

7.4.3 训练网络并查看验证准确率

7.5 从SimpleRNN到LSTM

7.5.1 SimpleRNN的局限性

7.5.2 LSTM网络的记忆传送带

7.6 用LSTM鉴定评论文本

7.7 问题定义:太阳系外哪些恒星有行星环绕

7.8 用循环神经网络处理时序问题

7.8.1 时序数据的导入与处理

7.8.2 建模:CNN和RNN的组合

7.8.3 输出阈值的调整

7.8.4 使用函数式API

7.9 本课内容小结

7.10 课后练习

第8课 经典算法“宝刀未老”

8.1 K最近邻

8.2 支持向量机

8.3 朴素贝叶斯

8.4 决策树

8.4.1 熵和特征节点的选择

8.4.2 决策树的深度和剪枝

8.5 随机森林

8.6 如何选择最佳机器学习算法

8.7 用网格搜索超参数调优

8.8 本课内容小结

8.9 课后练习

第9课 集成学习“笑傲江湖”

9.1 偏差和方差——机器学习性能优化的风向标

9.1.1 目标:降低偏差与方差

9.1.2 数据集大小对偏差和方差的影响

9.1.3 预测空间的变化带来偏差和方差的变化

9.2 Bagging算法——多个基模型的聚合

9.2.1 决策树的聚合

9.2.2 从树的聚合到随机森林

9.2.3 从随机森林到极端随机森林

9.2.4 比较决策树、树的聚合、随机森林、极端随机森林的效率

9.3 Boosting算法——锻炼弱模型的“肌肉”

9.3.1 AdaBoost算法

9.3.2 梯度提升算法

9.3.3 XGBoost算法

9.3.4 Bagging算法与Boosting算法的不同之处

9.4 Stacking/Blending算法——以预测结果作为新特征

9.4.1 Stacking算法

9.4.2 Blending算法

9.5 Voting/Averaging算法——集成基模型的预测结果

9.5.1 通过Voting进行不同算法的集成

9.5.2 通过Averaging集成不同算法的结果

9.6 本课内容小结

9.7 课后练习

第10课 监督学习之外——其他类型的机器学习

10.1 无监督学习——聚类

10.1.1 K均值算法

10.1.2 K值的选取:手肘法

10.1.3 用聚类辅助理解营销数据

10.2 无监督学习——降维

10.2.1 PCA算法

10.2.2 通过PCA算法进行图像特征采样

10.3 半监督学习

10.3.1 自我训练

10.3.2 合作训练

10.3.3 半监督聚类

10.4 自监督学习

10.4.1 潜隐空间

10.4.2 自编码器

10.4.3 变分自编码器

10.5 生成式学习

10.5.1 机器学习的生成式

10.5.2 生成式对抗网络

10.6 本课内容小结

10.7 课后练习

第11课 强化学习实战——咖哥的冰湖挑战

11.1 问题定义:帮助智能体完成冰湖挑战

11.2 强化学习基础知识

11.2.1 延迟满足

11.2.2 更复杂的环境

11.2.3 强化学习中的元素

11.2.4 智能体的视角

11.3 强化学习基础算法Q-Learning详解

11.3.1 迷宫游戏的示例

11.3.2 强化学习中的局部最优

11.3.3 ε-Greedy策略

11.3.4 Q-Learning算法的伪代码

11.4 用Q-Learning算法来解决冰湖挑战问题

11.4.1 环境的初始化

11.4.2 Q-Learning算法的实现

11.4.3 Q-Table的更新过程

11.5 从Q-Learning算法到SARSA算法

11.5.1 异策略和同策略

11.5.2 SARSA算法的实现

11.6 用SARSA算法来解决冰湖挑战问题

11.7 Deep Q Network算法:用深度网络实现Q-Learning

11.8 本课内容小结

11.9 课后练习

尾 声 如何实现机器学习中的知识迁移及持续性的学习

练习答案

零基础学机器学习是2020年由人民邮电出版社出版,作者黄佳。

得书感谢您对《零基础学机器学习》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
机器学习公式详解 电子书
适读人群 :(1)高等院校人工智能、计算机、自动化等相关专业机器学习方向的学生;(2)学术界机器学习领域的研究人员和教师;(3)工业界对机器学习感兴趣的专业人员和工程师。 1.周志华教授“西瓜书”《机器学习》公式完全解析指南! “南瓜书”系Datawhale成员自学笔记,对“西瓜书”中250个重难点公式做了详细解析和推导(重难点公式覆盖率达99%),旨在解决机器学习中的数学难题。 2.机器学习初学小白提升数学基础能力的必备练习册! 以本科数学基础视角对“西瓜书”里比较难理解的公式加以解析和推导细节,补充大量重、难点数学知识和参考材料,分享在学习中遇到的“坑”以及跳过这个“坑”的方法,对于初学机器学习的小白也能上手练习! 3.俞勇、王斌、李沐、程明明、陈光(博主@爱可可-爱生活)、徐亦达等人工智能领域大咖亲笔推荐
机器学习工程实战 电子书
机器学习入门手册《机器学习精讲》姊妹篇,人工智能和机器学习领域专业人士的多年实践结晶,深入浅出讲解机器学习应用和工程实践。
机器学习案例实战 电子书
机器学习已经广泛地应用于各行各业,深度学习的兴起再次推动了人工智能的热潮。本书结合项目实践,首先讨论了TensorFlow、PySpark、TI-ONE等主流机器学习平台的主要特点;然后结合Tableau介绍了数据可视化在银行客户用卡行为分析的应用。在此基础上,利用上述介绍的这些平台,通过多个项目案例,详细地分析了决策树、随机森林、支持向量机、逻辑回归、贝叶斯网络、卷积神经网络、循环神经网络、对抗
PVCBOT零基础机器人制作 第3版 电子书
“PVCBOT”是“PVC-Robot”的缩写,既是指以PVC为主要材料来制作的机器人,也是指定位在“低成本、易实现”的一项机器人DIY活动。当前的“PVCBOT”系列机器人教程,将从零开始介绍如何制作PVC机器人,希望通过分享我们的一些心得体会,对那些想要入门或者刚入门的朋友有所帮助。当然,这里所分享的内容都是基于作者作为机器人业余爱好者的经历,所面向的对象可能也只是非专业出身的业余爱好者,有很
零基础学Photoshop CS6 电子书
本书结合实际操作案例深入浅出地讲解了PhotoshopCS6的使用技法,入门篇,包括Photoshop基础入门、画布及文档的管理、单色及渐变填充、强大的绘画功能;提高篇,包括认识选区及抠图命令、路径和形状工具、图层及图层样式、掌握文字的运用;篇精通篇,包括通道和蒙版操作、照片修饰与美化工具、调色辅助与色彩校正、神奇的滤镜特效;实战篇,包括基础实例进阶、照片处理秘技、特效艺术合成表现、UI界面设计、