python文本数据挖掘_Python数据挖掘与机器学习实战__前言-程序员宅基地

技术标签: python文本数据挖掘  

Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。作为一门编程语言,其魅力远超C#、Java、C和C++等编程语言,被昵称为“胶水语言”,更被热爱它的程序员誉为“最美丽的”编程语言。从云端和客户端,再到物联网终端,Python应用无处不在,同时它还是人工智能(AI)首选的编程语言。

近年来,人工智能在全世界掀起了新的科技浪潮,各行各业都在努力涉足人工智能技术。而机器学习是人工智能的一种实现方式,也是最重要的实现方式之一。深度学习是目前机器学习比较热门的一个方向,其本身是神经网络算法的衍生,在图像、语音等富媒体的分类和识别上取得了非常好的效果。数据挖掘主要利用机器学习界提供的技术来分析海量数据,利用数据库界提供的技术来管理海量数据。例如,在对超市货品进行摆放时,牛奶到底是和面包摆放在一起销量更高,还是和其他商品摆在一起销量更高,就可以用相关算法得出结论。由于机器学习技术和数据挖掘技术都是对数据之间的规律进行探索,所以人们通常将两者放在一起提及。而这两种技术在现实生活中也有着非常广阔的应用场景。例如,分类学习算法可以对客户等级进行划分,可以验证码识别,可以对水果品质自动筛选等;回归学习算法可以对连续型数据进行预测,以及对趋势进行预测等;聚类学习算法可以对客户价值和商圈做预测;关联分析可以对超市的货品摆放和个性化推荐做分析;而深度学习算法还可以实现自然语言处理方面的应用,如文本相似度、聊天机器人及自动写诗作画等应用。

纵观国内图书市场,关于Python的书籍不少,它们主要偏向于工具本身的用法,如关于Python的语法、参数、异常处理、调用及开发类实例等,但是基于Python数据挖掘与机器学习类的书籍并不是特别多,特别是介绍最新的基于深度学习算法原理和实战的图书更少。本书将通过具体的实例来讲解数据处理和挖掘技术,同时结合最新的深度学习、强化学习及在线学习等理论知识和实用的项目案例,详细讲解16种常用的数据挖掘和机器学习算法。

本书有何特色

1.全程使用Python 3编程语言

本书通过Anaconda和Spyder提供的Python编程功能实现各种算法:

* 介绍了Scrapy框架和XPath工具;

* 重点介绍了TensorFlow工具的开发和使用;

* 以票务网为例,实现了网站票务信息的爬虫案例。

2.剖析回归分析的基本原理

回归分析是一种应用极为广泛的数量分析方法。本书中的回归分析相关章节实现了如下几个重要例子:

* 对于线性回归,介绍了如何使用一元线性回归求解房价预测的问题;

* 实例演示了使用多元线性回归进行商品价格的预测,以及使用线性回归对股票进行预测;

* 通过环境检测数据异常分析与预测这个实验,用实例具体实现了逻辑回归的过程。

3.详解分类和聚类机器学习算法

在数据挖掘领域中,对分类和聚类算法的研究及运用非常重要。书中着重研究了决策树、随机森林、SVM、HMM、BP神经网络、K-Means和贝叶斯等算法,并实现了以下例子:

* 使用决策树算法对鸢尾花数据集进行分类;

* 使用随机森林对葡萄酒数据集进行分类;

* SVM中采用三种核函数进行时间序列曲线预测;

* HMM模型用于中文分词;

* 用TensorFlow实现BP神经网络;

* 朴素贝叶斯分类器在破产预测中的应用。

4.详细地描述了常用的深度学习算法

本书相关章节中详细地描述了卷积神经网络、循环神经网络、生成对抗网络等。主要有如下实例演示:

* 采用卷积神经网络实现了雷达剖面图识别实例;

* 使用LSTM模型实现了一个聊天机器人的程序;

* 通过DCGAN网络来训练数据,从而产生人脸图像。

5.讨论了其他常用机器学习算法

本书中还讨论了在线学习和强化学习等常见的机器学习算法,例如:

* 演示在线学习Bandit算法与推荐系统;

* 使用Adaboost算法实现马疝病的检测。

6.提供了丰富而实用的数据挖掘源代码,并提供了操作视频和教学PPT

本书详尽地描述了各种重要算法,并提供了很多来源于真实项目案例的源代码。另外,还特别为本书制作了相关操作的教学视频和专业的教学PPT和操作视频,以方便读者学习。

* 卷积神经网络雷达图像识别项目;

* LSTM聊天机器人项目;

* HMM中文分词系统;

* DCGAN的人脸生成模型。

本书内容及知识体系

第1章主要对机器学习的基本概念进行了概述,介绍了5种Python开发工具,分别是IDLE、IPython、PyCharm、Jupyter Notebook、Anaconda和Spyder,对它们的特点进行了阐述,并选择Anaconda和Spyder作为本书的开发工具。

第2章主要介绍了Python开发环境、计算规则与变量,并详细介绍了Python常用的数据类型,分别是字符串、列表、元组和字典;还介绍了爬虫的基本原理,其中重点介绍了Scrapy框架和XPath工具,并且以票务网为例实现了网站票务信息的爬取。

第3章首先介绍了数据挖掘中的回归分析和线性回归的基本概念,然后介绍了如何使用一元线性回归求解房价预测的问题,最后介绍了使用多元线性回归进行商品价格的预测。本章通过环境检测数据异常分析与预测这个实验,对逻辑回归做出了具体的表现分析。

第4章是关于常用分类算法的讲解,主要对决策树和随机森林的基本概念和算法原理进行了详细阐述。本章使用决策树对鸢尾花数据集进行分类,并使用随机森林对葡萄酒数据集进行分类。通过学习本章内容,读者会对决策树算法和随机森林算法有更进一步的认识。

第5章主要介绍了基于统计学习理论的一种机器学习方法——支持向量机,通过寻求结构风险最小来提高泛化能力,实现经验风险和置信范围的最小化,从而达到在统计样本较少的情况下也能获得良好的统计规律的目的,可利用SMO算法高效求解该问题。针对线性不可分问题,利用函数映射将原始样本空间映射到高维空间,使得样本线性可分,进而通过SMO算法求解拉普拉斯对偶问题。

第6章介绍了隐马尔可夫模型要解决的三个基本问题,以及解决这三个基本问题的方法,带领读者深入学习解码问题,并掌握解决解码的Viterbi算法,运用Viterbi算法思想精髓“将全局最佳解的计算过程分解为阶段最佳解的计算”,实现对语料的初步分词工作。此外,本章还介绍了HMM模型用于中文分词的方法。

第7章介绍了人工神经网络(Artificial Neural Network,ANN)的基本概念、特点、组成部分和前向传播等内容;阐述了单层神经网络、双层神经网络及多层神经网络的概念和原理;使用TensorFlow实现BP神经网络,进一步强化对BP神经网络的理解和使用。

第8章主要介绍了卷积神经网络的原理及其在图像识别领域中的应用。本章带领读者掌握卷积神经网络的各层,包括输入层、卷积层、池化层、全连接层和输出层;利用卷积神经网络进行雷达图像识别,实现了对雷暴大风灾害性天气的识别,并以地面自动站出现7级大风作为出现灾害性雷暴大风天气的判据,从而建立一套集雷暴大风实时识别、落区预报及落区检验于一体的综合系统。

第9章从自然语言处理的基础知识引入了循环神经网络,并详细阐述其原理及强大之处,最后使用它来实现聊天机器人。循环神经网络常用于处理序列数据,例如一段文字或声音、购物或观影的顺序,甚至可以是图片中的一行或一列像素。

第10章介绍了聚类与集成算法的相关知识。K-Means聚类是一种自下而上的聚类方法,其优点是简单、速度快;Adaboost算法是Boosting方法中最流行的一种算法。集成算法便是将多个弱学习模型通过一定的组合方式,形成一个强学习模型,以达到提高学习正确率的目的。

第11章介绍了贝叶斯分类器分类方法,在一个真实数据集上执行了朴素贝叶斯分类器的训练预测,取得了理想的效果;在围绕实时大数据流分析这一需求展开的研究中,对在线学习Bandit算法的概念进行了阐述,并用Python进行了实验分析;还对生成对抗网络(GAN)进行了讲解,同时也介绍了DCGAN网络模型,并且使用DCGAN网络进行了人脸生成实验。

本书配套资源获取方式

本书涉及的源代码文件、教学视频、教学PPT视频和Demo需要读者自行下载。请登录华章公司的网站www.hzbook.com,在该网站上搜索到本书页面,然后单击“资料下载”按钮即可在页面上找到“配书资源”下载链接。

本书读者对象

* Python程序员;

* 对数据挖掘感兴趣的人员;

* 对机器学习和深度学习感兴趣的人员;

* 想转行到人工智能领域的技术人员;

* 想从其他编程语言转Python开发的人员;

* 喜欢编程的自学人员;

* 高校计算机等专业的学生;

* 专业培训机构的学员。

本书阅读建议

* 没有Python开发基础的读者,建议从第1章顺次阅读并演练每一个实例。

* 有一定Python数据挖掘基础的读者,可以根据实际情况有重点地选择阅读各个模块和项目案例。对于每一个模块和项目案例,先思考一下实现的思路,然后再亲自动手实现,这样阅读效果更佳。

* 有基础的读者可以先阅读书中的模块和Demo,再结合配套源代码理解并调试,这样更加容易理解,而且也会理解得更加深刻。

本书作者

本书由方巍主笔编写。其他参与编写和程序调试工作的人员还有王秀芬、丁叶文和张飞鸿。本书能得以顺利出版,要感谢南京信息工程大学计算机与软件学院2017级的全体研究人员,还要感谢在写作和出版过程中给予笔者大量帮助的各位编辑!

由于笔者水平所限,加之写作时间有限,书中可能还存在一些疏漏和不足之处,敬请各位读者批评指正。联系邮箱:[email protected]

最后祝大家读书快乐!

编著者

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39606118/article/details/110129078

智能推荐

oracle 12c 集群安装后的检查_12c查看crs状态-程序员宅基地

文章浏览阅读1.6k次。安装配置gi、安装数据库软件、dbca建库见下:http://blog.csdn.net/kadwf123/article/details/784299611、检查集群节点及状态:[root@rac2 ~]# olsnodes -srac1 Activerac2 Activerac3 Activerac4 Active[root@rac2 ~]_12c查看crs状态

解决jupyter notebook无法找到虚拟环境的问题_jupyter没有pytorch环境-程序员宅基地

文章浏览阅读1.3w次,点赞45次,收藏99次。我个人用的是anaconda3的一个python集成环境,自带jupyter notebook,但在我打开jupyter notebook界面后,却找不到对应的虚拟环境,原来是jupyter notebook只是通用于下载anaconda时自带的环境,其他环境要想使用必须手动下载一些库:1.首先进入到自己创建的虚拟环境(pytorch是虚拟环境的名字)activate pytorch2.在该环境下下载这个库conda install ipykernelconda install nb__jupyter没有pytorch环境

国内安装scoop的保姆教程_scoop-cn-程序员宅基地

文章浏览阅读5.2k次,点赞19次,收藏28次。选择scoop纯属意外,也是无奈,因为电脑用户被锁了管理员权限,所有exe安装程序都无法安装,只可以用绿色软件,最后被我发现scoop,省去了到处下载XXX绿色版的烦恼,当然scoop里需要管理员权限的软件也跟我无缘了(譬如everything)。推荐添加dorado这个bucket镜像,里面很多中文软件,但是部分国外的软件下载地址在github,可能无法下载。以上两个是官方bucket的国内镜像,所有软件建议优先从这里下载。上面可以看到很多bucket以及软件数。如果官网登陆不了可以试一下以下方式。_scoop-cn

Element ui colorpicker在Vue中的使用_vue el-color-picker-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏3次。首先要有一个color-picker组件 <el-color-picker v-model="headcolor"></el-color-picker>在data里面data() { return {headcolor: ’ #278add ’ //这里可以选择一个默认的颜色} }然后在你想要改变颜色的地方用v-bind绑定就好了,例如:这里的:sty..._vue el-color-picker

迅为iTOP-4412精英版之烧写内核移植后的镜像_exynos 4412 刷机-程序员宅基地

文章浏览阅读640次。基于芯片日益增长的问题,所以内核开发者们引入了新的方法,就是在内核中只保留函数,而数据则不包含,由用户(应用程序员)自己把数据按照规定的格式编写,并放在约定的地方,为了不占用过多的内存,还要求数据以根精简的方式编写。boot启动时,传参给内核,告诉内核设备树文件和kernel的位置,内核启动时根据地址去找到设备树文件,再利用专用的编译器去反编译dtb文件,将dtb还原成数据结构,以供驱动的函数去调用。firmware是三星的一个固件的设备信息,因为找不到固件,所以内核启动不成功。_exynos 4412 刷机

Linux系统配置jdk_linux配置jdk-程序员宅基地

文章浏览阅读2w次,点赞24次,收藏42次。Linux系统配置jdkLinux学习教程,Linux入门教程(超详细)_linux配置jdk

随便推点

matlab(4):特殊符号的输入_matlab微米怎么输入-程序员宅基地

文章浏览阅读3.3k次,点赞5次,收藏19次。xlabel('\delta');ylabel('AUC');具体符号的对照表参照下图:_matlab微米怎么输入

C语言程序设计-文件(打开与关闭、顺序、二进制读写)-程序员宅基地

文章浏览阅读119次。顺序读写指的是按照文件中数据的顺序进行读取或写入。对于文本文件,可以使用fgets、fputs、fscanf、fprintf等函数进行顺序读写。在C语言中,对文件的操作通常涉及文件的打开、读写以及关闭。文件的打开使用fopen函数,而关闭则使用fclose函数。在C语言中,可以使用fread和fwrite函数进行二进制读写。‍ Biaoge 于2024-03-09 23:51发布 阅读量:7 ️文章类型:【 C语言程序设计 】在C语言中,用于打开文件的函数是____,用于关闭文件的函数是____。

Touchdesigner自学笔记之三_touchdesigner怎么让一个模型跟着鼠标移动-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏13次。跟随鼠标移动的粒子以grid(SOP)为partical(SOP)的资源模板,调整后连接【Geo组合+point spirit(MAT)】,在连接【feedback组合】适当调整。影响粒子动态的节点【metaball(SOP)+force(SOP)】添加mouse in(CHOP)鼠标位置到metaball的坐标,实现鼠标影响。..._touchdesigner怎么让一个模型跟着鼠标移动

【附源码】基于java的校园停车场管理系统的设计与实现61m0e9计算机毕设SSM_基于java技术的停车场管理系统实现与设计-程序员宅基地

文章浏览阅读178次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot + mybatis + Maven +mysql5.7或8.0+html+css+js等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。_基于java技术的停车场管理系统实现与设计

Android系统播放器MediaPlayer源码分析_android多媒体播放源码分析 时序图-程序员宅基地

文章浏览阅读3.5k次。前言对于MediaPlayer播放器的源码分析内容相对来说比较多,会从Java-&amp;amp;gt;Jni-&amp;amp;gt;C/C++慢慢分析,后面会慢慢更新。另外,博客只作为自己学习记录的一种方式,对于其他的不过多的评论。MediaPlayerDemopublic class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal..._android多媒体播放源码分析 时序图

java 数据结构与算法 ——快速排序法-程序员宅基地

文章浏览阅读2.4k次,点赞41次,收藏13次。java 数据结构与算法 ——快速排序法_快速排序法