前言:学习资料的来源均出自,《图解机器学习》-杉山将,中国工信出版集团。《数据挖掘导论》-戴红,清华大学出版书,数据挖掘算法原理与实现。
笔者自述:不知道什么时候就开始有想学习数据挖掘这一块的知识,但是却从来都没有过开始。直到几天前,突然鬼使神差的去了图书馆,找了基本数据挖掘方面的书籍。当读完导论的时候,发现自己已经不能自给,深深的爱上了这个领域的东西。由于已经好久没接触计算机方面的知识了,现在又是一次挑战,我相信我可以的,希望广大走在奋斗道路上的朋友一同加油。我们扬帆起航,驶向远方。当然还有另外一个原因,那就是,因为本人今年大四,可能继续攻读研究生,但是不想把时间浪费在大四这一年无所事事的生活中,于是下定决心去找一份实习,虽然发了很多简历,但是基本上都是被拒了,所以坚定了我想好好学习一门技术的原因。
今天只是一个开始,数据挖掘这个领域的知识很多,以后我会不定时的发布自己的学习进程,与君共勉,我们一同加油,这么做的目的不是想怎么怎么样,只是想大家能很好的监督我。我们一起前进。我们都不是神的孩子,我们都是有梦的孩子。
今天我们来谈谈,数据挖掘的入门,数据挖掘这门技术很深奥,我们以后会慢慢给出。
一、数据挖掘的简单介绍
首先明确一个概念,数据挖掘不是简单的数据处理,他会用到数据库知识,机器学习知识,统计学知识等等。就好比你想追一个你不太熟悉的女孩子,你想知道,她喜欢什么样子的食物,喜欢什么类型的电影、音乐,什么样子的性格等等,那么你又不好意思直接询问,于是,你就打开她的朋友圈,微博,qq等一系列的社交工具。从这里边选取有用的信息进行使用,来判别她是什么类型的姑娘,平时喜欢做一些什么,所以学好数据挖掘,可以使我们能迅速了解一个姑娘,找到女朋友,结束这么多年的单身状态。所以这也是我学习数据挖掘的一个原因。
二、机器学习
机器学习(Machine Learning,ML)是模拟人类的学习方法来解决计算机获取知识问题的方法。我看了很多本关于机器学习的数据,发现里边对于机器学习的分类大体一致,我们这里采用《图解机器学习》里的分类,机器学习按照数据种类的不同,可以分为以下三类,监督学习,非监督学习,强化学习。
分类 | 算法 | 应用 |
监督学习 | 1预测数值型数据的回归 2预测分类标签的分类 3预测顺序的排序 | 1手写文字识别 2声音处理 3图像处理 4垃圾邮件分类与拦截 5网页检索 6基因诊断 7股票预测 |
无监督学习 | 1聚类 2异常检测 | 1人造卫星故障检测 2视频分析 3社交网站解析 4声音信号解析 |
强化学习 | 1回归 2分类 3聚类 4降维 | 1机器人的自动控制 2计算机游戏的人工智能 3市场战略的最优化等方面 |
表格中的技术和应用我给自己定下的目标就是都进行训练。
接下来就是几种算法的形象化解释和理解
回归:把实函数在样本点附近加以近似的有监督的函数近似问题。
分类:指对于指定的模式进行识别的有监督的模式识别问题。
异常检测:输入样本点中包含异常数据的问题。
聚类:与分类问题相同,也是模式识别问题。
降维:从高纬度的数据中提取关键信息,将其转换为易于计算的低维度问题进而求解的方法。
学习模型而是分为以下三种,线性模型,核模型,层级模型。
三、数据挖掘的过程
数据挖掘的过程说的简单一点就是,从一堆数据中,通过一些算法,限定的条件,找到你需要的数据的过程,那么,数据来自什么地方,面对大量的数据它们存贮在什么地方,他们的数据类型是什么样子的,使用什么样的算法才是最准确的,才能得到我们想要的结果呢,又怎么进行数据模型的检测呢,那当所有的一些都完事了,这个模型又有什么应用呢?所有的一些,你是不是很迫不及待的想要去了解了呢?下面画一个流程示意图:
数据挖掘技术的选择至关重要:以下十点需参考,
1判断这个特定问题是否需要监督,是否需要进行关联分析。
2不同的数据挖掘技术对数据集中的属性之间的相关程度有不同的适应性。
3不同的数据挖掘技术对数据类型本身很敏感,明确输入属性是分类的,还是数值的,还是混合的,输出的类型是分类的还是数值的。
4针对数据本身,还应该了解数据的分布,比如统计技术则事先假设数据是正太分布的。这种假设是否与实际相等,是在采取统计技术前考虑。
5针对数据本身,还应该了解属性对于分类的预测能力。
6对于数据集中存在噪声数据和缺失数据的考虑。
7如果学习是有指导的,判断有一个输出属性还是多个输出属性。
8对所学的知识的解释能力往往也在选择某种技术建模时需要考虑到的内容。
9在选择挖掘技术时是否有时间上的考虑。
10选择机器学习技术还是统计技术的一些考虑。
综上所述,可以进行多选择不同的算法,来得出最好的数据结果。
四、数据挖掘的发展
数据挖掘的发展主要是分为四大类,其中包括:web挖掘,空间数据挖掘,流数据挖掘,数据挖掘与可视化技术,在这里边我认为最重要的技术就是流挖掘技术。之后的学习会有详细的学习笔记。
1 web数据挖掘
web数据挖掘
基于网页内容的挖掘 | 基于用户使用习惯的挖掘 | 基于网页结构的挖掘 |
聚类 关联规则 语义web 网页内容挖掘 搜索结果挖掘 文本挖掘 多媒体挖掘 | 关联规则 个性化服务 商务智能 客户分析 用途分析 系统改善建议 电子商务 入侵检测 Web代理 | Xml(DTD)挖掘 Html文档挖掘 导航 |
以上的具体应用会在后边的学习中给出。
我们了解了web在那几个方面进行数据挖掘,那么接下来就是我们挖掘的数据从何而来呢?
数据源
特点 | 来源 | 关键问题 |
多类型,无规律,无结构和多噪声的特点 | 1用户注册信息 2网页内容信息 3网页站点结构信息 4用户搜索数据 5网页日志信息 6代理服务器数据 | 1网页的动态性 2提取用户真正感兴趣的信息 3面对广泛的用户群 4Web网页文档结构的复杂 5海量的数据源 |
接下来我们说完了数据源,但是海量数据中,总有你想获得数据,那么多量的数据我们可以称为知识,那么知识本身是不是也应该有一定的分类呢?下面是对于知识的分类结构
隐形知识:非结构化的形式,例如:留言,社区,日志,博文。
显性知识:结构化特性,例如:标签,评分和用户资料。
衍生知识:搜索,聚类和文本挖掘。
以上就是web数据挖掘的浅谈,深入的理解和例子,还要进一步学习。
2 空间数据挖掘
空间数据是人们借以认识自然和改造自然的重要数据,空间数据库中包含空间数据和非空间数据
空间数据的特点:
(1) 数据源十分丰富,数据量非常大,数据类型多,存取方法复杂。
(2) 涉及领域十分广泛,凡与空间位置相关的数据,都可进行挖掘。
(3) 挖掘方法和算法非常多,大多数算法比较复杂,难度大。
(4) 知识的表达方式多样,对知识的理解和评判依赖人对客观世界的认知程度。
接下来介绍空间数据挖掘的方法:
方法名称 | 作用 | 举例 |
统计分析方法 | 分析空间数据的常用方法,有效地处理数值型数据 | 变差函数和kriging方法代表的地学统计 |
空间分析法 | GIS关键技术,区别与一般数字制图系统的主要标志 | 预处理和特征提取方法 |
归纳学习法 | 大量的经验数据中抽取出一般的规则和模式 | C4.5算法 |
关联规则挖掘方法 | 事物数据库中发现顾客购买多种商品的搭配规律 | Apriori算法 |
聚类算法 | 按照一定的距离或相似性系数将数据分成一系列相互区分的组 | K-means算法 |
分类方法 | 预先给定的类,从而将数据库中的数据分配给定的类中 | 决策树 |
粗糙及方法 | 广泛应用处理不精确,不确定和不完全的信息,分析和知识获取 |
|
云理论 | 处理不确定性的新理论 | 云模型,虚拟云,云运算,云变换 |
3 流数据挖掘
传统的数据管理系统,只能用于处理永久的数据和进行瞬时的查询。
流数据
定义 | 特点 | 挖掘关键技术 | 应用及前景 |
流数据是一个没有界限的数据序列,产生速度快,是连续、有序、实时、无限的元组序列 | 数据连续不断到达 | 流数据频繁模式挖掘技术 | 网络监控 |
有序性,实时性 | 流数据相似性搜索技术 | 传感器 | |
概要性 | 流数据任意形状聚类技术 | 航天科技 | |
近似性 | 流数据分类技术 | 股票市场 | |
单遍处理性 | 金融市场 | ||
即时性 |
4 数据挖掘与可视化技术
可视化将数据、程序、复杂系统的结构及动态行为用图形,图像,动画等可视化的形式表示。本质上:将抽象数据到可视结构的映射。
可视化技术
技术名称 | 实现方式 | 功能 |
标准2D/3D技术 | 条形图、线条图 | 可视化 |
几何转化显示技术 | 散点图矩阵 | 使散点图用矩阵的方式表达多维据集 |
解刨视图 | 把截面和投影组合起来,显示中间维的结构面貌 | |
平行坐标法 | 不同数据类型之间的差异 | |
星型坐标法 | N维数据空间中的点被表示成这个二维平面的一个点 | |
图标显示技术 | 多维数据项 |
|
密集像素显示技术 | 吧每一维数据值映射到一个彩色的像素上 | 局部关系,依赖性和热点提供详细信息 |
层叠式显示技术 | 以分层方式将数据分开表示在子空间中 | 仔细选择 |
以上的知识内容只是浅谈数据挖掘,那么浅谈系列还会持续更新。读者有什么意见,可以直接给我留言,并且想跟我一起干掉数据挖掘这门技术的,我们可以一起讨论。