主编推荐语
本书介绍了NumPy数值计算、Pandas数据处理、Matplotlib数据可视化、爬虫和Sklearn数据挖掘等内容,适合Python程序员及人工智能领域的开发人员阅读。
内容简介
本书作为数据挖掘和机器学习的读物,基于真实数据集进行案例实战,使用Python数据科学库,从数据预处理开始一步步介绍数据建模和数据挖掘的过程。书中主要介绍了数据挖掘的基础知识、基本工具和实践方法,通过循序渐进地讲解算法,带领读者轻松踏上数据挖掘之旅。
本书采用理论与实践相结合的方式,呈现了如何使用逻辑回归进行环境数据检测,如何使用HMM进行中文分词,如何利用卷积神经网络识别雷达剖面图,如何使用循环神经网络构建聊天机器人,如何使用朴素贝叶斯算法进行破产预测,如何使用DCGAN网络进行人脸生成等。本书也涉及神经网络、在线学习、强化学习、深度学习和大数据处理等内容。
本书以人工智能主流编程语言Python 3版作为数据分析与挖掘实战的应用工具,从Pyhton的基础语法开始,陆续介绍了NumPy数值计算、Pandas数据处理、Matplotlib数据可视化、爬虫和Sklearn数据挖掘等内容。全书共涵盖16个常用的数据挖掘算法和机器学习实战项目。
通过学习本书内容,读者可以掌握数据分析与挖掘的理论知识及实战技能。本书内容丰富,讲解由浅入深,特别适合对数据挖掘和机器学习算法感兴趣的读者阅读,也适合需要系统掌握深度学习的开发人员阅读,还适合Python程序员及人工智能领域的开发人员阅读。编程爱好者、高校师生及培训机构的学员也可以将本书作为兴趣读物或教材使用。
目录
- 版权信息
- 前言
- 第1章 机器学习基础
- 1.1 机器学习概述
- 1.2 机器学习的发展历程
- 1.3 机器学习分类
- 1.3.1 监督学习
- 1.3.2 无监督学习
- 1.3.3 强化学习
- 1.3.4 深度学习
- 1.4 机器学习的应用
- 1.5 开发机器学习的步骤
- 1.6 Python语言的优势
- 1.6.1 可执行伪代码
- 1.6.2 Python语言使用广泛
- 1.6.3 Python语言特色
- 1.6.4 Python语言的缺点
- 1.7 Python开发工具介绍
- 1.7.1 IDLE简介
- 1.7.2 IPython简介
- 1.7.3 PyCharm简介
- 1.7.4 Jupyter Notebook简介
- 1.7.5 Anaconda和Spyder简介
- 1.8 本章小结
- 第2章 Python语言简介
- 2.1 搭建Python开发环境
- 2.1.1 安装Anaconda
- 2.1.2 安装Spyder
- 2.1.3 运行和保存Python程序
- 2.2 Python计算与变量
- 2.2.1 用Python做简单的计算
- 2.2.2 Python的运算符
- 2.2.3 Python的变量
- 2.3 Python的字符串
- 2.4 Python的列表
- 2.5 Python的元组
- 2.6 Python的字典
- 2.7 网络爬虫的发展历史和分类
- 2.7.1 网络爬虫的发展历史
- 2.7.2 网络爬虫的分类
- 2.8 网络爬虫的原理
- 2.8.1 理论概述
- 2.8.2 爬虫的工作流程
- 2.9 爬虫框架介绍
- 2.9.1 Scrapy介绍
- 2.9.2 XPath介绍
- 2.10 网络爬虫的设计与实现
- 2.10.1 网络爬虫的总体设计
- 2.10.2 具体实现过程
- 2.10.3 爬虫结果与分析
- 2.11 本章小结
- 第3章 回归分析
- 3.1 回归分析概述
- 3.1.1 基本概念
- 3.1.2 可以解决的问题
- 3.1.3 回归分析的步骤
- 3.2 线性回归
- 3.2.1 简单线性回归分析
- 3.2.2 多元线性回归分析
- 3.2.3 非线性回归数据分析
- 3.3 用Python实现一元线性回归
- 3.4 用Python实现多元线性回归
- 3.4.1 使用pandas读取数据
- 3.4.2 分析数据
- 3.4.3 线性回归模型
- 3.5 基于线性回归的股票预测
- 3.5.1 数据获取
- 3.5.2 数据预处理
- 3.5.3 编码实现
- 3.5.4 结果分析
- 3.6 逻辑回归
- 3.6.1 构造预测函数
- 3.6.2 构造损失函数J
- 3.6.3 梯度下降法求解最小值
- 3.7 基于逻辑回归的环境数据检测
- 3.7.1 数据来源
- 3.7.2 数据处理
- 3.7.3 异常数据分析
- 3.7.4 数据预测
- 3.8 本章小结
- 第4章 决策树与随机森林
- 4.1 决策树
- 4.1.1 决策树的基本原理
- 4.1.2 决策树的分类
- 4.1.3 决策树的优缺点
- 4.2 使用决策树对鸢尾花分类
- 4.2.1 Iris数据集简介
- 4.2.2 读取数据
- 4.2.3 鸢尾花类别
- 4.2.4 数据可视化
- 4.2.5 训练和分类
- 4.2.6 数据集多类分类
- 4.2.7 实验结果
- 4.3 随机森林
- 4.3.1 随机森林的基本原理
- 4.3.2 随机森林的收敛性
- 4.3.3 随机森林的OOB估计
- 4.3.4 随机森林的随机特征选取
- 4.3.5 随机森林的优缺点
- 4.4 葡萄酒数据集的随机森林分类
- 4.4.1 数据收集
- 4.4.2 相关库函数简介
- 4.4.3 数据基本分析
- 4.4.4 使用随机森林构建模型
- 4.4.5 实验结果
- 4.5 本章小结
- 第5章 支持向量机
- 5.1 SVM的工作原理及分类
- 5.1.1 支持向量机的原理
- 5.1.2 线性可分的支持向量机
- 5.1.3 非线性可分的支持向量机
- 5.2 核函数
- 5.2.1 核函数简介
- 5.2.2 几种常见的核函数
- 5.2.3 核函数如何处理非线性数据
- 5.2.4 如何选择合适的核函数
- 5.3 SVR简介
- 5.3.1 SVR原理
- 5.3.2 SVR模型
- 5.4 时间序列曲线预测
- 5.4.1 生成训练数据集
- 5.4.2 运用不同的核函数进行支持向量回归
- 5.4.3 生成测试数据集
- 5.4.4 预测并生成图表
- 5.4.5 获取预测误差
- 5.4.6 创建数据集
- 5.4.7 选取最优参数
- 5.4.8 预测并生成图表
- 5.4.9 获取预测误差
- 5.5 本章小结
- 第6章 隐马尔可夫模型
- 6.1 隐马尔可夫模型简介
- 6.1.1 隐马尔可夫模型的概念
- 6.1.2 详例描述
- 6.1.3 HMM流程
- 6.2 Viterbi算法
- 6.3 HMM模型用于中文分词
- 6.3.1 UI界面
- 6.3.2 数据及其编码
- 6.3.3 HMM模型
- 6.3.4 实验结果
- 6.4 本章小结
- 第7章 BP神经网络模型
- 7.1 背景介绍
- 7.2 结构特点
- 7.3 网络模型
- 7.4 人工神经网络简介
- 7.4.1 神经元
- 7.4.2 单层神经网络
- 7.4.3 双层神经网络
- 7.4.4 多层神经网络
- 7.5 BP神经网络
- 7.6 通过TensorFlow实现BP神经网络
- 7.7 本章小结
- 第8章 卷积神经网络
- 8.1 传统图像识别技术
- 8.1.1 图像预处理
- 8.1.2 图像特征提取
- 8.1.3 图像分类方法
- 8.2 卷积神经网络简介
- 8.2.1 卷积神经网络发展历程
- 8.2.2 卷积神经网络结构简介
- 8.3 卷积神经网络的结构及原理
- 8.3.1 卷积层
- 8.3.2 池化层
- 8.3.3 激活函数
- 8.3.4 全连接层
- 8.3.5 反馈运算
- 8.4 卷积神经网络的优点
- 8.5 雷达剖面图识别模型
- 8.5.1 数据准备
- 8.5.2 构建模型
- 8.6 模型测试分析
- 8.6.1 部署基本模块
- 8.6.2 创建项目结构
- 8.6.3 训练网络
- 8.6.4 自动化测试
- 8.7 本章小结
- 第9章 循环神经网络
- 9.1 自然语言处理
- 9.1.1 自然语言处理概述
- 9.1.2 自然语言处理应用
- 9.2 对话系统
- 9.2.1 对话系统分类
- 9.2.2 聊天机器人分类
- 9.3 基于LSTM结构的循环神经网络
- 9.3.1 循环神经网络
- 9.3.2 通过时间反向传播
- 9.3.3 长短期记忆网络(LSTM)
- 9.4 Seq2Seq模型
- 9.4.1 Encoder-Decoder框架
- 9.4.2 Attention机制
- 9.5 聊天机器人的程序实现
- 9.5.1 准备数据
- 9.5.2 创建模型
- 9.5.3 训练模型
- 9.5.4 测试模型
- 9.6 本章小结
- 第10章 聚类与集成算法
- 10.1 聚类方法简介
- 10.1.1 聚类定义
- 10.1.2 聚类要求
- 10.2 聚类算法
- 10.2.1 划分方法
- 10.2.2 层次方法
- 10.2.3 基于密度的方法
- 10.2.4 基于网格的方法
- 10.2.5 基于模型的方法
- 10.3 K-Means算法
- 10.3.1 K-Means算法概述
- 10.3.2 K-Means算法流程
- 10.3.3 K-Means算法实现
- 10.3.4 实验结果及分析
- 10.3.5 K-Means算法存在的问题
- 10.4 K-Means++算法
- 10.4.1 K-Means++的基本思想
- 10.4.2 K-Means++的数学描述
- 10.4.3 K-Means++算法流程
- 10.5 K-Means++的实现
- 10.5.1 数据集
- 10.5.2 代码实现
- 10.5.3 K-Means++实验结果
- 10.6 Adaboost集成算法的原理
- 10.6.1 Boosting算法的基本原理
- 10.6.2 Adaboost算法介绍
- 10.6.3 Adaboost分类问题的损失函数优化
- 10.6.4 Adaboost二元分类问题的算法流程
- 10.6.5 Adaboost回归问题的算法流程
- 10.6.6 Adaboost算法的正则化
- 10.6.7 Adaboost的优缺点
- 10.7 Adaboost算法实现
- 10.7.1 数据集处理
- 10.7.2 实现过程
- 10.7.3 实验结果分析
- 10.8 本章小结
- 第11章 其他机器学习算法
- 11.1 贝叶斯分类器
- 11.1.1 概率基础知识
- 11.1.2 贝叶斯决策准则
- 11.1.3 极大似然估计
- 11.2 贝叶斯分类模型
- 11.2.1 朴素贝叶斯分类模型
- 11.2.2 半朴素贝叶斯分类模型
- 11.2.3 贝叶斯网络分类模型
- 11.3 朴素贝叶斯分类器在破产预测中的应用
- 11.3.1 数据集
- 11.3.2 训练多项式朴素贝叶斯模型
- 11.4 在线学习
- 11.4.1 线性模型的在线学习
- 11.4.2 非线性模型的在线学习
- 11.5 Bandit在线学习算法
- 11.5.1 Bandit算法与推荐系统
- 11.5.2 常用Bandit算法
- 11.6 Bandit算法原理及实现
- 11.7 GAN网络
- 11.7.2 模型结构
- 11.7.3 GAN的实现原理
- 11.8 DCGAN网络
- 11.8.1 模型结构
- 11.8.2 反卷积
- 11.9 DCGAN人脸生成
- 11.9.1 实验准备
- 11.7.1 GAN产生的背景
- 11.9.2 关键模块的实现
- 11.9.3 实验结果展示
- 11.10 本章小结
- 附录A 机器学习常见试题
- 附录B 数学基础
- B.1 常用符号
- B.2 数学基础知识
- B.2.1 线性代数
- B.2.2 概率论
- B.2.3 信息论
- 参考文献
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。