《Python数据挖掘:概念、方法与实践》一 第1章 扩展你的数据挖掘工具箱

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介:
 本节书摘来自华章出版社《Python数据挖掘:概念、方法与实践》一书中的第1章,第1.1节,作者[美] 梅甘·斯夸尔(Megan Squire),更多章节内容可以访问云栖社区“华章计算机”公众号查看。

第1章

扩展你的数据挖掘工具箱

面对感官信息时,人类自然想要寻找模式,对其进行区别、分类和预测。这种寻找周围模式的过程是人类的基本活动,人类的大脑对此很擅长。利用这种技能,我们的祖先更好地掌握了狩猎、聚会、烹饪和组织知识。因此,人类最早计算机化的任务是模式识别和模式预测也就不足为奇了,这种渴望一直持续到现在。近来,根据给定项目的目标,使用计算机找出数据中的模式,已经涉及数据库系统、人工智能、统计学、信息检索、计算机视觉和其他各种计算机科学子领域,以及信息系统、数学或者商业等。不管我们将这种活动称作什么—数据库中的知识发现、数据挖掘、数据科学,其主要使命始终是找出有趣的模式。

这一使命听起来似乎有些微不足道,数据挖掘已经存在了很长时间,对其实现已经积累了足够多的变种,但是现在它已经成为了一个广泛而复杂的领域。我们可以想象一所烹饪学校,其中的每位新人首先学习的是如何煮开水,如何使用刀具,然后才转向更高级的技能,如制作松饼或者为鸡肉去骨。在数据挖掘中,也有一些常用的技术,刚入门的数据挖掘人员也要学习它们:如何构建分类器,如何在数据中找到聚类宏。但是,本书的主题是精通Python数据挖掘,所以,作为“精通”级别的书籍,目标是传授给你一些在之前的数据挖掘项目中未曾见过的技术。

在第1章中,我们将介绍如下主题:

什么是数据挖掘?要确定数据挖掘在不断增强的其他相似概念中的位置,还将学习这一学科成长和变化的历史。

我们如何进行数据挖掘?在此,我们将对比数据挖掘项目中常用的几种过程或者方法论。

数据挖掘中使用哪些技术?在这一部分,将总结数据挖掘定义中包含的典型数据分析技术,并强调这本精通级书籍将要涵盖的较为独特却未得到应有重视的技术。

如何建立数据挖掘工作环境?最后,我们将经历建立基于Python开发环境的过程,我们将用这个环境完成本书余下部分中的项目。

1.1 什么是数据挖掘

前文解释了数据挖掘的目标是找出数据中的模式,但是细看之下,这一过分简单的解释就站不住脚。毕竟,寻找模式难道不也是经典统计学、商业分析、机器学习甚至更新的数据科学或者大数据的目标吗?数据挖掘和其他这些领域有什么差别呢?当我们实际上是忙于挖掘模式时,为什么将其称作“数据挖掘”?我们不是已经有数据了吗?

从一开始,“数据挖掘”这一术语就明显有许多问题。这个术语最初是统计学家们对盲目调查的轻蔑叫法,在这种调查中,数据分析人员在没有首先形成合适假设的情况下,就着手寻找模式。但是,这一术语在20世纪90年代成为主流,当时的流行媒体风传一种激动人心的研究,将成熟的数据库管理系统领域与来自机器学习和人工智能的最佳算法结合起来。“挖掘”这一单词的加入预示着这是现代的“淘金热”,执著、无畏的“矿工”们将发现(且可能从中得益)之前隐藏的珍宝。“数据本身可能是珍稀商品”这一思路很快吸引了商业上和技术刊物的注意,使他们无视先驱们努力宣传的、更为全面的术语—数据库中的知识发现(KDD)。

但是,“数据挖掘”这一术语沿用了下来,最终,该领域的一些定义试图改变其解释,认为它指的只是更漫长、更全面的知识发现过程中的一步。今天“数据挖掘”和KDD被视为非常相似、紧密相关的术语。

那么,其他相关术语如机器学习、预测性分析、大数据和数据科学又是怎么回事?这些术语和数据挖掘或者KDD是不是一回事?下面我们比较这些术语:

机器学习是计算机科学中的一个非常特殊的子领域,其焦点是开发能从数据中学习以作出预测的算法。许多数据挖掘解决方案使用了来自机器学习的技术,但是并不是所有数据挖掘都试图从数据中作出预测或者学习。有时候,我们只是想要找到数据中的一个模式。实际上,在本书中,我们所研究的数据挖掘解决方案中只有少数使用了机器学习技术,而更多的方案中并没有使用。

预测性分析有时简称为分析,是各个领域中试图从数据中作出预测的计算解决方案的统称。我们可以思考商业分析、媒体分析等不同术语。有些(但并不是全部)预测性分析解决方案会使用机器学习技术进行预测,但是同样,在数据挖掘中,我们并不总是对预测感兴趣。

大数据这一术语指的是处理非常大量数据的问题和解决方案,与我们是要搜索数据中的模式还是简单地存储这些数据无关。对比大数据和数据挖掘这两个术语,许多数据挖掘问题在数据集很大时更为有趣,所以为处理大数据所开发的解决方案迟早可用于解决数据挖掘问题。但是这两个术语只是互为补充,不能互换使用。

数据科学是最接近于KDD过程的术语,数据挖掘是它们的一个步骤。因为数据科学目前是极受欢迎的流行语,它的含义将随着这一领域的成熟而继续发展和变化。

我们可以查看Google Trends,了解上述术语在一段时期内的搜索热度。Google Trends工具展示了一段时期内人们搜索各种关键词的频度。在图1-1中,新出现的术语“大数据”目前是炙手可热的流行语,“数据挖掘”居于第二位,然后是“机器学习”、“数据科学”和“预测性分析”。(我试图加入搜索词“数据库中的知识发现”,但是结果太接近于0,无法看到趋势线。)y轴以0~100的指数显示了特定搜索词的流行度。此外,我们还将Google Trends给出的2014~2015年每周指数组合为月平均值。

4e3bfdab119064db756187e5a41792ac6c0280bd


相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
27天前
|
测试技术 API Python
【10月更文挑战第1天】python知识点100篇系列(13)-几种方法让你的电脑一直在工作
【10月更文挑战第1天】 本文介绍了如何通过Python自动操作鼠标或键盘使电脑保持活跃状态,避免自动息屏。提供了三种方法:1) 使用PyAutoGUI,通过安装pip工具并执行`pip install pyautogui`安装,利用`moveRel()`方法定时移动鼠标;2) 使用Pymouse,通过`pip install pyuserinput`安装,采用`move()`方法移动鼠标绝对位置;3) 使用PyKeyboard,同样需安装pyuserinput,模拟键盘操作。文中推荐使用PyAutoGUI,因其功能丰富且文档详尽。
WK
|
13天前
|
Python
Python中format_map()方法
在Python中,`format_map()`方法用于使用字典格式化字符串。它接受一个字典作为参数,用字典中的键值对替换字符串中的占位符。此方法适用于从字典动态获取值的场景,尤其在处理大量替换值时更为清晰和方便。
WK
65 36
|
18天前
|
数据采集 JSON 数据处理
抓取和分析JSON数据:使用Python构建数据处理管道
在大数据时代,电商网站如亚马逊、京东等成为数据采集的重要来源。本文介绍如何使用Python结合代理IP、多线程等技术,高效、隐秘地抓取并处理电商网站的JSON数据。通过爬虫代理服务,模拟真实用户行为,提升抓取效率和稳定性。示例代码展示了如何抓取亚马逊商品信息并进行解析。
抓取和分析JSON数据:使用Python构建数据处理管道
|
24天前
|
机器学习/深度学习 数据采集 数据挖掘
11种经典时间序列预测方法:理论、Python实现与应用
本文将总结11种经典的时间序列预测方法,并提供它们在Python中的实现示例。
59 2
11种经典时间序列预测方法:理论、Python实现与应用
|
2天前
|
图形学 Python
SciPy 空间数据2
凸包(Convex Hull)是计算几何中的概念,指包含给定点集的所有凸集的交集。可以通过 `ConvexHull()` 方法创建凸包。示例代码展示了如何使用 `scipy` 库和 `matplotlib` 绘制给定点集的凸包。
10 1
|
3天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
4天前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
28天前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
44 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
28天前
|
计算机视觉 Python
Python实用记录(九):将不同的图绘制在一起、将不同txt文档中的数据绘制多条折线图
这篇文章介绍了如何使用Python的OpenCV库将多张图片合并为一张图片显示,以及如何使用matplotlib库从不同txt文档中读取数据并绘制多条折线图。
41 3
Python实用记录(九):将不同的图绘制在一起、将不同txt文档中的数据绘制多条折线图
|
29天前
|
数据可视化 算法 Python
基于OpenFOAM和Python的流场动态模态分解:从数据提取到POD-DMD分析
本文介绍了如何利用Python脚本结合动态模态分解(DMD)技术,分析从OpenFOAM模拟中提取的二维切片数据,以深入理解流体动力学现象。通过PyVista库处理VTK格式的模拟数据,进行POD和DMD分析,揭示流场中的主要能量结构及动态特征。此方法为研究复杂流动系统提供了有力工具。
61 2
基于OpenFOAM和Python的流场动态模态分解:从数据提取到POD-DMD分析
下一篇
无影云桌面