-
内容大纲
本书首先介绍了人工智能的基础知识,然后分别介绍了机器学习、深度学习、自然语言处理和强化学习中的重点概念和实践过程,包含逻辑斯谛回归、k最近邻、决策树、随机森林、支持向量机、卷积神经网络、循环神经网络、LSTM、自动编码器等。此外,本书的附录部分还分别简单介绍了Keras、TensorFlow、pandas等人工智能相关的工具。
本书适用于高等院校电子信息类专业的人工智能导论课程,也适合想要对人工智能、机器学习和深度学习快速了解和掌握的专业人士阅读参考。 -
作者介绍
-
目录
第1章 人工智能导论
1.1 什么是人工智能
1.2 图灵测试
1.2.1 图灵测试的定义
1.2.2 询问者测试
1.3 启发式方法
1.4 知识表示
1.4.1 基于逻辑的解决方案
1.4.2 语义网络
1.5 人工智能和博弈
1.6 专家系统
1.7 神经计算
1.8 演化计算
1.9 自然语言处理
1.10 生物信息学
1.11 人工智能的主要部分
1.11.1 机器学习
1.11.2 深度学习
1.11.3 强化学习
1.11.4 机器人学
1.11.5 自然语言处理
1.12 代码示例
1.13 总结
第2章 机器学习概述
2.1 什么是机器学习
2.2 机器学习算法的类型
2.3 特征工程、特征选择和特征提取
2.4 降维
2.4.1 PCA
2.4.2 协方差矩阵
2.5 使用数据集
2.5.1 训练数据与测试数据
2.5.2 什么是交叉验证
2.6 什么是正则化
2.6.1 机器学习和特征缩放
2.6.2 数据归一化与标准化
2.7 偏差-方差权衡
2.8 模型的度量指标
2.8.1 R2的局限性
2.8.2 混淆矩阵
2.8.3 准确率、精确率、召回率
2.8.4 ROC曲线
2.9 其他有用的统计学术语
2.9.1 F1值是什么
2.9.2 p值是什么
2.10 什么是线性回归
2.10.1 线性回归与曲线拟合
2.10.2 什么时候解是精确值
2.10.3 什么是多元分析
2.11 其他类型的回归
2.12 使用平面中的线(可选)
2.13 用NumPy和matplotlib画散点图(1)
2.14 用NumPy和matplotlib画散点图(2)
2.15 用NumPy和matplotlib画二次散点图
2.16 MSE公式
2.16.1 误差类型列表
2.16.2 非线性最小二乘法
2.17 手动计算MSE
2.18 用np.linspace()API近似线性数据
2.19 用np.linspace()API计算MSE
2.20 用Keras进行线性回归
2.21 总结
第3章 机器学习分类器
3.1 什么是分类
3.1.1 什么是分类器
3.1.2 常见的分类器
3.1.3 二元分类与多类别分类
3.1.4 多标签分类
3.2 什么是线性分类器
3.3 什么是kNN
3.4 什么是决策树
3.5 什么是随机森林
3.6 什么是SVM
3.7 什么是贝叶斯推理
3.7.1 贝叶斯定理
3.7.2 一些贝叶斯术语
3.7.3 什么是最大后验假设
3.7.4 为什么使用贝叶斯定理
3.8 什么是朴素贝叶斯分类器
3.9 训练分类器
3.10 评估分类器
3.11 什么是激活函数
3.11.1 为什么需要激活函数
3.11.2 激活函数是如何工作的
3.12 常见的激活函数
3.12.1 Python中的激活函数
3.12.2 Keras中的激活函数
3.13 ReLU和ELU激活函数
3.13.1 ReLU激活函数
3.13.2 ELU激活函数
3.14 Sigmoid、Softmax、Softplus和tanh激活函数的相似性
3.14.1 Sigmoid激活函数
3.14.2 Softmax激活函数
3.14.3 Softplus激活函数
3.14.4 tanh激活函数
3.15 Sigmoid、Softmax和Hardmax激活函数之间的差异
3.16 什么是逻辑斯谛回归
3.16.1 设置阈值
3.16.2 逻辑斯谛回归:重要假设
3.16.3 线性可分数据
3.17 Keras、逻辑斯谛回归和Iris数据集
3.18 总结
第4章 深度学习概述
4.1 Keras和异或函数XOR
4.2 什么是深度学习
4.2.1 什么是超参数
4.2.2 深度学习体系架构
4.2.3 深度学习所能解决的问题
4.2.4 未来的挑战
4.3 什么是感知器
4.3.1 感知器函数的定义
4.3.2 感知器的详细视图
4.4 人工神经网络剖析
4.4.1 初始化模型的超参数
4.4.2 激活函数
4.4.3 损失函数
4.4.4 优化器
4.4.5 学习率
4.4.6 丢弃率
4.5 什么是反向误差传播
4.6 什么是多层感知器
4.7 数据点是如何被正确分类的
4.8 CNN的高阶视图
4.8.1 一个极简的CNN
4.8.2 卷积层
4.8.3 ReLU激活函数
4.8.4 最大池化层
4.9 在MNIST数据集上显示图像
4.10 Keras和MNIST数据集
4.11 Keras、CNN和MNIST数据集
4.12 用CNN分析音频信号
4.13 总结
第5章 深度学习体系架构:RNN和LSTM
5.1 什么是RNN
5.1.1 RNN剖析
5.1.2 什么是BPTT
5.2 在Keras中使用RNN
5.3 在Keras中使用RNN和MNIST数据集
5.4 在TensorFlow中使用RNN(可选)
5.5 什么是LSTM
5.5.1 LSTM剖析
5.5.2 双向LSTM
5.5.3 LSTM公式
5.5.4 LSTM超参数调优
5.6 在TensorFlow中使用LSTM(可选)
5.7 什么是GRU
5.8 什么是自动编码器
5.8.1 自动编码器和主成分分析
5.8.2 什么是可变自动编码器
5.9 什么是GAN
5.10 创建GAN
5.11 总结
第6章 自然语言处理和强化学习
6.1 使用NLP
6.1.1 NLP技术
6.1.2 Transformer架构和NLP
6.1.3 Transformer-XL架构
6.1.4 Reformer架构
6.1.5 NLP和深度学习
6.1.6 NLP中的数据预处理任务
6.2 流行的NLP算法
6.2.1 什么是n-gram
6.2.2 什么是skip-gram
6.2.3 什么是词袋
6.2.4 什么是词频
6.2.5 什么是反文档频率
6.2.6 什么是TF-IDF
6.3 什么是词嵌入
6.4 ELMo、ULMFit、OpenAI、BERT和ERNIE2
6.5 什么是Translatotron
6.6 深度学习和NLP
6.7 NLU与NLG
6.8 什么是强化学习
6.8.1 强化学习的应用
6.8.2 NLP与强化学习
6.8.3 强化学习中的价值、策略和模型
6.9 从NFA到MDP
6.9.1 什么是NFA
6.9.2 什么是马尔可夫链
6.9.3 马尔可夫决策过程
6.10 epsilon贪心算法
6.11 贝尔曼方程
6.12 强化学习工具包和框架
6.13 什么是深度强化学习
6.14 总结
附录A Keras简介
A.1 什么是Keras
A.1.1 在TF2中使用Keras命名空间
A.1.2 使用tf.keras.layers命名空间
A.1.3 使用tf.keras.activations命名空间
A.1.4 使用tf.keras.datasets命名空间
A.1.5 使用tf.keras.experimental命名空间
A.1.6 使用tf.keras中的其他命名空间
A.1.7 TF2Keras与“独立”Keras
A.2 创建基于Keras的模型
A.3 Keras和线性回归
A.4 Keras、MLP和MNIST数据集
A.5 Keras、CNN和cifar10数据集
A.6 在Keras中调整图像大小
A.7 Keras和提前停止(1)
A.8 Keras和提前停止(2)
A.9 Keras模型的度量指标
A.10 保存和恢复Keras模型
A.11 总结
附录B TF2简介
B.1 什么是TF
B.1.1 TF2用例
B.1.2 TF2架构
B.1.3 TF2安装
B.1.4 TF2和Python的REPL
B.2 其他基于TF2的工具包
B.3 TF2即时执行
B.4 TF2张量、数据类型和原始类型
B.4.1 TF2数据类型
B.4.2 TF2原始类型
B.5 TF2中的常量
B.6 TF2中的变量
B.7 tf.rank()API
B.8 tf.shape()API
B.9 TF2中的变量(重新审视)
B.10 TF2中的@tf.function是什么
B.10.1 @tf.function如何工作
B.10.2 TF2中@tf.function的注意事项
B.10.3 tf.print()函数和标准错误
B.11 在TF2中使用@tf.function
B.11.1 一个未使用@tf.function的例子
B.11.2 一个使用@tf.function的例子
B.11.3 使用@tf.function重载函数的例子
B.11.4 TF2中的AutoGraph是什么
B.12 TF2中的算术运算
B.13 TF2中算术运算的注意事项
B.14 TF2的内置函数
B.15 计算TF2中的三角函数值
B.16 计算TF2中的指数值
B.17 在TF2中使用字符串
B.18 在TF2中使用带有各种张量的运算符
B.19 TF2中的二阶张量(1)
B.20 TF2中的二阶张量(2)
B.21 TF2中两个二阶张量的乘法
B.22 将Python数组转换为TF2张量
B.23 微分和TF2中的tf.GradientTape
B.24 tf.GradientTape的示例
B.24.1 使用tf.GradientTape的watch()方法
B.24.2 将嵌套的循环用于tf.GradientTape
B.24.3 其他涉及tf.GradientTape的TF2张量运算
B.24.4 持久的梯度磁带
B.25 谷歌Colaboratory
B.26 其他云平台
B.27 总结
附录C pandas简介
C.1 什么是pandas
C.1.1 pandas数据帧
C.1.2 数据帧和数据清洗任务
C.2 带标签的pandas数据帧
C.3 pandas数值数据帧
C.4 pandas布尔数据帧
C.5 pandas数据帧和随机数
C.6 组合pandas数据帧(1)
C.7 组合pandas数据帧(2)
C.8 pandas数据帧的数据处理(1)
C.9 pandas数据帧的数据处理(2)
C.10 pandas数据帧的数据处理(3)
C.11 pandas数据帧和CSV文件
C.12 pandas数据帧和Excel电子表格(1)
C.13 pandas数据帧和Excel电子表格(2)
C.14 读取具有不同分隔符的数据文件
C.15 使用sed命令转换数据(可选)
C.16 选择、添加和删除数据帧中的列
C.17 pandas数据帧和散点图
C.18 pandas数据帧和直方图
C.19 pandas数据帧和简单统计
C.20 pandas数据帧的标准化
C.21 pandas数据帧、NumPy函数和大型数据集
C.22 使用pandas序列
C.22.1 数据来自ndarray
C.22.2 来自pandas序列的pandas数据帧
C.23 pandas中有用的单行命令
C.24 什么是Jupyter
C.24.1 Jupyter特性
C.24.2 从命令行启动Jupyter
C.24.3 JupyterLab
C.24.4 开发JupyterLab扩展
C.25 总结
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...