1、数据挖掘和算法
数据挖掘是从大型数据库的分析中发现预测信息的过程。对于数据科学家来说,数据挖掘可能是一项模糊而艰巨的任务 - 它需要多种技能和许多数据挖掘技术知识来获取原始数据并成功获取数据。您需要了解统计学的基础,以及可以帮助您大规模进行数据挖掘的不同编程语言。
本指南将提供一个示例填充的使用Python的数据挖掘简介,Python是最广泛使用的数据挖掘工具之一 - 从清理和数据组织到应用机器学习算法。首先,让我们更好地理解数据挖掘及其完成方式。
1.1、数据挖掘定义
数据挖掘的期望结果是从给定数据集创建模型,该模型可以将其洞察力推广到类似数据集。从银行和信贷机构的自动欺诈检测中可以看到成功的数据挖掘应用程序的真实示例。
如果您的银行检测到您的帐户存在任何可疑活动,您的银行可能会制定一项提醒您的政策 - 例如在您注册的住所以外的州内重复提取ATM或大量购物。这与数据挖掘有何关系?数据科学家通过应用算法来创建该系统,通过将交易与欺诈性和非欺诈性收费的历史模式进行比较,对交易是否具有欺诈性进行分类和预测。该模型“知道”如果你住在加利福尼亚州圣地亚哥,那么向俄罗斯人口稀少的省份收取的数千美元购买的可能性很大。
这只是数据挖掘的众多强大应用之一。数据挖掘的其他应用包括基因组测序,社交网络分析或犯罪成像 - 但最常见的用例是分析消费者生命周期的各个方面。公司使用数据挖掘来发现消费者的偏好,根据他们的购买活动对不同的消费者进行分类,并确定对付高薪客户的要求 - 这些信息可以对改善收入流和降低成本产生深远影响。
如果您正在努力获得良好的数据集以开始分析,我们为您的第一个数据科学项目编译了19个免费数据集。
什么是数据挖掘技术?
有多种方法可以从数据集构建预测模型,数据科学家应该了解这些技术背后的概念,以及如何使用代码生成类似的模型和可视化。这些技术包括:
回归 - 通过优化误差减少来估计变量之间的关系。
具有拟合线性回归模型的散点图的示例
分类 - 识别对象所属的类别。一个例子是将电子邮件分类为垃圾邮件或合法邮件,或者查看某人的信用评分并批准或拒绝贷款请求。
聚类分析 - 根据数据的已知特征查找数据对象的自然分组。在营销中可以看到一个例子,其中分析可以揭示具有独特行为的客户分组 - 这可以应用于业务战略决策中。
散点图的示例,其中数据按群集分段和着色
关联和相关分析 - 寻找不明显的变量之间是否存在唯一关系。一个例子就是着名的啤酒和尿布案例:在本周末购买纸尿裤的男性更有可能购买啤酒,因此商店将它们放在一起以增加销量。
异常值分析 - 检查异常值以检查所述异常值的潜在原因和原因。其中一个例子是在欺诈检测中使用离群值分析,并试图确定规范之外的行为模式是否是欺诈。
业务数据挖掘通常使用事务和实时数据库执行,该数据库允许轻松使用数据挖掘工具进行分析。其中一个例子是在线分析处理服务器或OLAP,它允许用户在数据服务器内进行多维分析。OLAP允许企业查询和分析数据,而无需下载静态数据文件,这在数据库日常增长的情况下很有用。但是,对于那些希望学习数据挖掘和自己练习的人来说,iPython笔记本 非常适合处理大多数数据挖掘任务。
让我们来看看如何使用Python来使用上述两种数据挖掘算法执行数据挖掘:回归和 聚类。
2、在Python中创建回归模型
我们想解决的问题是什么?
我们想要建立变量之间线性关系的估计,打印相关系数,并绘制最佳拟合线。对于这个分析,我将使用来自Kaggle的King's County数据集中的House Sales的数据。如果您对Kaggle不熟悉,那么它是查找适合数据科学实践的数据集的绝佳资源。King's County的数据包含有关房价和房屋特征的信息 - 让我们看看我们是否可以估算房价与房屋面积之间的关系。
第一步:为工作提供合适的数据挖掘工具 - 安装Jupyter,熟悉一些模块