数据挖掘(一)数据挖掘的发展及算法简介

写这个博客主要是为了增强自身的理解和记忆,个人见解颇多,欢迎指正,欢迎讨论。

大数据时代的数据挖掘

信息时代的发展,信息的爆发性增长,衍生了我们目前的“大数据时代”,整个社会全员大数据,提供了很多工作机会,尤其是对我们这些从事爬虫工作的人员,在爬虫工作形式日益严峻的前提下,愈发厌倦了和反爬人员的撕逼大战,站在道德高点上砍瓜切菜,对我们这些靠技术混口饭吃的码农们,产生了刀刀大动脉的暴击,一方面是技术的狭窄性,一方面是工作环境的恶劣,与其如此,不如投身大数据时代的数据挖掘行业,突破一小步,人生一大步。
废话少说,进入正题,大数据在当前愈发引起了各行各业的重视,大数据年代,数据的产生和收集是基础,而数据挖掘是最关键的基本工作,数据挖掘泛指从大量数据中挖掘出的隐性的,先前未知的但存在有用信息的工程化和系统化的过程
从数据层看,大数据的特点:海量(volume),多样(variety),价值(value),高速(velocity)。简称4V,以区别大数据和分布抽样的小数据,在实际应用上大数据还具备变化性(variable),真实性(veracity),波动性(volatility),可视化(visualization),这是大数据在处理的复杂性上被赋予的新的4V。

大数据分析平台

大数据的历史基本可以追溯到18世纪朴素贝叶斯理论的诞生,我们目前去追寻理论的历史,没有必然性,放眼当前,理论与实际应用的契合,是我们越发的依附于平台,在大数据平台的托举下,以数据为材料,算法为核心加工技术,以实际应用提供的可视化页面,从而使大数据分析更加有利于实践。平台方面,首先是大数据分析的翘楚-hadoop(擅长批处理),hadoop的批处理模型大行其道的时候,为了应对动态的数据流,storm(动态数据流),横空出世。

大数据的数据挖掘算法

我们先把算法列举一下,以后慢慢一个个细说。
1.C4.5 :决策树分类
2.k-means: K均值聚类
3.SVM:支持向量机分类或者回归
4.Apriori:关联规则挖掘
5.EM:最大期望参数估计
6.PageRank:链接分析
7.AdaBoost:集成算法
8.kNN:k近邻算法
9.朴素贝叶斯分类
10.CART:分类和回归

数据挖掘平台介绍

1、WEKA

WEKA 原生的非 Java 版本主要是为了分析农业领域数据而开发的。该工具基于 Java 版本,是非常复杂的,并且应用在许多不同的应用中,包括数据分析以及预测建模的可视化和算法。与 RapidMiner 相比优势在于,它在 GNU 通用公共许可证下是免费的,因为用户可以按照自己的喜好选择自定义。

WEKA 支持多种标准数据挖掘任务,包括数据预处理、收集、分类、回归分析、可视化和特征选取。添加序列建模后,WEKA 将会变得更强大,但目前不包括在内。

2、RapidMiner

该工具是用 Java 语言编写的,通过基于模板的框架提供先进的分析技术。该款工具最大的好处就是,用户无需写任何代码。它是作为一个服务提供,而不是一款本地软件。值得一提的是,该工具在数据挖掘工具榜上位列榜首。

另外,除了数据挖掘,RapidMiner 还提供如数据预处理和可视化、预测分析和统计建模、评估和部署等功能。更厉害的是它还提供来自 WEKA(一种智能分析环境)和 R 脚本的学习方案、模型和算法。

RapidMiner 分布在 AGPL 开源许可下,可以从 SourceForge 上下载。SourceForge 是一个开发者进行开发管理的集中式场所,大量开源项目在此落户,其中就包括维基百科使用的 MediaWiki。

3、NLTK

当涉及到语言处理任务,没有什么可以打败 NLTK。NLTK 提供了一个语言处理工具,包括数据挖掘、机器学习、数据抓取、情感分析等各种语言处理任务。

而您需要做的只是安装 NLTK,然后将一个包拖拽到您最喜爱的任务中,您就可以去做其他事了。因为它是用 Python 语言编写的,你可以在上面建立应用,还可以自定义它的小任务。

4、Orange

Python 之所以受欢迎,是因为它简单易学并且功能强大。如果你是一个 Python 开发者,当涉及到需要找一个工作用的工具时,那么没有比 Orange 更合适的了。它是一个基于 Python 语言,功能强大的开源工具,并且对初学者和专家级的大神均适用。

此外,你肯定会爱上这个工具的可视化编程和 Python 脚本。它不仅有机器学习的组件,还附加有生物信息和文本挖掘,可以说是充满了数据分析的各种功能。

5、KNIME

数据处理主要有三个部分:提取、转换和加载。 而这三者 KNIME 都可以做到。 KNIME 为您提供了一个图形化的用户界面,以便对数据节点进行处理。它是一个开源的数据分析、报告和综合平台,同时还通过其模块化数据的流水型概念,集成了各种机 器学习的组件和数据挖掘,并引起了商业智能和财务数据分析的注意。

KNIME 是基于 Eclipse,用 Java 编写的,并且易于扩展和补充插件。其附加功能可随时添加,并且其大量的数据集成模块已包含在核心版本中。

当涉及到语言处理任务,没有什么可以打败 NLTK。NLTK 提供了一个语言处理工具,包括数据挖掘、机器学习、数据抓取、情感分析等各种语言处理任务。

而您需要做的只是安装 NLTK,然后将一个包拖拽到您最喜爱的任务中,您就可以去做其他事了。因为它是用 Python 语言编写的,你可以在上面建立应用,还可以自定义它的小任务。

6、R-Programming

如果我告诉你R项目,一个 GNU 项目,是由 R(R-programming简称,以下统称R)自身编写的,你会怎么想?它主要是由 C 语言和 FORTRAN 语言编写的,并且很多模块都是由 R 编写的,这是一款针对编程语言和软件环境进行统计计算和制图的免费软件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值