当前位置:   article > 正文

人工智能算法数据挖掘第二篇_人工智能数据挖掘算法应用相关文章

人工智能数据挖掘算法应用相关文章

#博学谷IT学习技术支持#

分析过去 把握现在 预测未来

在茫茫的数据大海海底下有一望无际的信息沙漠,金灿灿的有价值的信息深埋其中等待人们去发现和挖掘

对数据敏感就是对有价值信息的敏感    培养数据敏感性的过程就是树立真正的审美观

元数据(Metadata checkpointing)管理数据的数据

getOrCreate 有就获取激活状态的option没有就创建

机器学习在大数据项目中的位置    位于数据分析和BI报表之间层

大数据时代改变的是思维方式
数据重要性:数据资源--------->数据资产(数据的增值)
   买卖数据的公司
方法论:基于知识的理论完美主义(∵因为,∴所以)--------->基于数据的历史经验主义(基于历史事物)
   推荐系统(获取用户最近点击 浏览 收藏 加购 分享等)
   翻译:
     基于知识的方面(过去)
       你好吗?
         语言学家
           你:you  your
           好:good better well
           吗:do does did
           Are you ok? Are you good? How are you?
           How are you?
     基于数据的方面(基于数据)
       抽样调查:
         Are you ok? Are you good? How are you?(choose)
数据分析:统计学(抽样)--------->数据科学(学术界的叫法-(工业界)大数据)--------->数据科学家
   数据科学与大数据专业
   数据科学家--------->大数据的架构技能+机器学习算法的技能+多年业务经验
     boss搜索该职位
计算智能:
   复杂的算法(遗传算法)--------->简单的算法(MR)
     简单的算法+数据[也可以如同复杂算法一样解决]=>业务问题
业务层面:
   业务的数据化--------->数据的业务化
     通过数据决策业务
决策方面
   基于目标决策--------->基于数据的决策
     依靠数据决策
产业竞合方面
   基于战略为中心--------->基于数据为中心
     数据重要性

 图像识别---识别猫or狗
 无人驾驶---百度无人车
 智能翻译----中英文转换
 语音识别---提取语音特征
 医疗智能诊断-------结合传统的医生的方法+医疗数据分析
   没病----有病
   有病----没病
 数据挖掘 对信息进行价值化的提取 机器学习是一种方法 解决数据挖掘这件事情
   尿布---啤酒

什么不是机器学习
数值计算问题
确定性问题

1956  Artificial Intelligence提出
1956年夏季,以麦卡赛 明斯基 罗切斯特和申农等为首的一批有远见卓识的年轻科学家在一起聚会,共同研究和探讨用机器模拟智能的一系列有关问题,并首次提出了"人工智能"这一术语,它标志着"人工智能"这门新兴学科的正式诞生.IBM公司"深蓝"电脑击败了人类的世界国际象棋冠军更是人工智能技术的一个完美表现.人工智能的目的就是让计算机这台机器能够像人一样思考.
1950-1970
符号主义流派:专家系统占主导地位
1950:图灵设计国际象棋程序
1962:IBM Arthur Samuel的跳棋程序战胜人类高手(人工智能第一次浪潮) 跳棋 专家系统
1980-2000
统计主义流派
主要用统计模型解决问题
Vapnik 1993
1997:IBM 深蓝战胜卡斯帕罗夫(人工智能第二次浪潮) 国际象棋 统计模型 暴力穷举
2010-至今
神经网络 深度学习 大数据流派
Hinton 2006
2016:Google AlphaGO 战胜李世石(人工智能第三次浪潮) AlphaGo 大数据与深度学习

用机器学习的方法来进行数据挖掘.机器学习是一种方法;
数据挖掘是一件事情;还有一个相似的概念就是模式识别,这也是一件事情
数据挖掘是指从大量的数据中通过算法搜索隐藏于其中信息的过程.
数据挖掘通常与计算机科学有关,并通过统计 在线分析处理 情报检索 机器学习 专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标
深度学习技术只是机器学习的一种
人工智能是研究如何让机器具有类人智能的学科,目标是让机器具有人类的智能.
机器学习专门研究计算机怎样模拟或实现人类的学习行为,使之不断改善自身性能
机器学习模型=数据+机器学习算法
机器学习学习的是模型 机器学习的是模型中的参数
 对于不是机器学习问题:
   1-确定的问题
   2-统计的问题
 对于机器学习来讲,通过历史数据结合算法,给出预测模型或规律进行预测分析
   1-推荐场景
   2-Facebook人物标记
   3-预测2022年世界杯冠军名称
   4-预测2022年人民币汇率张or下跌的问题?
机器学习,是达到人工智能目标的手段之一;模式识别也是达到人工智能的手段之一;
如上图所示,对数据挖掘而言,数据库提供数据管理技术,机器学习和统计学提供数据分析技术
人工智能范围比较大,机器学习相对来说属于人工智能的范畴.数据挖掘则是将机器学习作为工具,利用机器学习的算法用来完成数据挖掘
没有机器学习之前,如何对邮件进行分类?
基于规则学习

缺点:
1-规律可能会变换------人会变化
2-能否避免因为人为的因素的影响带来的影响
基于模型学习

X:自变量------>定义域----->特征features
Y:因变量------->值域------->标签列label
F:函数---------->映射------->模型model
X F Y 从X和Y中学习到最佳的F 即找到最佳的k和b
y=kx+b----------->x是邮件的特征,y就是邮件分类
机器学习学习的是什么?
机器学习学习的是模型,更进一步将机器学习学习的是模型中的参数


行向量 列向量
特征空间 由特征张成的N维空间
 

能否将所有的数据都用于训练模型
一般情况下将数据集切分为训练集和测试集 比例为 82 73 64
X+y trainingdata+机器学习算法alg algorithms = 机器学习模型Model
鸢尾花Iris Dataset数据集是机器学习领域经典数据集,该数据集可以从加州大学欧文分校(UCI)的机器学习库中得到.鸢尾花数据集包含了150条鸢尾花信息,每50条取自三个鸢尾花中之一:Setosa Versicolour和Virginica,每个花的特征用下面5种属性描述.
萼片长度(厘米)
萼片宽度(厘米)
花瓣长度(厘米)
花瓣宽度(厘米)
类(Setosa Versicolour Virginica)
花的萼片是花的外部结构,保护花的更脆弱的部分(如花瓣).在许多花中,萼片是绿的,只有花瓣是鲜艳多彩的,然而对与鸢尾花,萼片也是鲜艳多彩的.下图中的Virginica鸢尾花的图片,鸢尾花的萼片比花瓣大并且下垂,而花瓣向上

数据集dataset
每一行的数据叫样本数据
(3)除最后一列标签列外,每一列的数据叫特征或属性
(4)最后一列叫标签列,样本所属类别.
(5)属性(特征)空间∶ 这里由4个特征组成的属性空间
(6)特征向量∶构成特征空间的每一行的特征数据
(7)训练数据∶由输入X(特征)和输出Y(标签)构成.
(8)训练(过程)∶从数据中学得模型的过程叫做"学习"或"训练".训练过程中使用的数据叫做训练数据
(9)测试样本∶被预测的样本数据,由测试数据和类标签构成.
(10)测试数据∶仅有输入的x构成,根据模型得到预测Label信息.
(11)预测∶学习完模型之后,由测试数据代入模型进行预测,得到预测值
(12)预测值和真实值的差距的评判标准∶
错误率∶错误样本数占总体样本的比例
准确率∶ 1-错误率
误差∶模型的实际输出和真实值的差距
训练误差∶ 学习器在训练样本上的误差
泛化误差∶ 学习器在新的样本上的误差

在鸢尾花中花数据集中,包含150个样本和4个特征,因此将其记作150x4维的矩阵,,其中R表示向量空间,这里表示150行4维的向量,记作:

我们一般使用上标(i)来指代第i个训练样本,使用小标(j)来指代训练数据集中第j维特征.一般小写字母代表向量,大写字母代表矩阵.
表示第150个花样本的第2个特征萼片宽度.在上述X的特征矩阵中,每一行表代表一个花朵的样本,可以记为一个四维行向量
数据中的每一列代表样本的一种特征,可以用一个150维度的列向量表示

类似地,可以用一个150维度的列向量存储目标变量(类标)

 
 数据集:西瓜数据集
   样本samples:8
   特征features:3
   类别标签列(class label):1列  0或1
 特征或属性====>特征或属性空间(3)===>特征向量或属性向量====>特征或属性值
 对于非数值型的数据进行处理分析
   labelencoder 标签编码
     0-1-2
   onehotencoder独热编码
     001
     010
     100
 需要进行数据集的划分
   训练集:测试集=8:2,7:3
   训练集是训练模型  
   通过测试集测试模型
 误差
   绝对误差
   平方误差
   训练误差:模型在训练集上的误差
   测试误差:模型在测试集的上误差
   泛化误差:模型对于新数据或测试数据的适应能力 新事物的适应能力
   准确率
   错误率
[基础概念1]将这组记录的集合称为一个"数据集"(data set),其中每条记录是关于一个事件或对象(这里说的是西瓜)的描述,也称为一个"样本"(sample).
[基础概念2]而我们所说的西瓜的色泽,这种可以反应事件或对象在某方面的表现或性质的事项,称为"特征"(feature)或"属性"(attribute)"
属性上的取值,如色泽青绿等,这个取值称为属性值(attribute value).
[基础概念3]属性构成的空间称为"属性空间"或样本空间(sample space)或输入空间.比如将西瓜的颜色,敲声作为两个坐标轴,则它们可以张成一个用于描述西瓜的二维空间,每个西瓜都可以在这个空间中找到自己的坐标位置.由于空间中的每个点都对应一个坐标向量,因此我们也把一个样本称作一个"特征向量"(feature vector).
假设是西瓜数据集的第i个样本,其中是在第j个属性上的取值,如第3个西瓜在第1个属性(颜色)上取值为"乌黑".d称为样本的"维度数或维数"(dimensionality).数据集D中的表示第i个样本或示例.
[基础概念4]从数据中学得模型得过程称为"学习"(learning)或训练(training),这个过程是通过执行某个学习算法来完成的.训练过程中使用的数据称为"训练数据"(training set).
训练数据:由输入X与输出Y对组成.训练集在数学上表示为:

[基础概念5]模型有时也称为"学习器"(learner),可以看作是学习算法在给定数据和参数空间上的实例化.
[基础概念6]如果希望学得一个能帮助我们判断西瓜是不是"好瓜"的模型,仅仅有前面的样本数据是不够的,要建立这样的关于"预测(prediction)"的模型,我们需要获得训练样本的"结果"信息,如:{(颜色=青绿,敲声=浊响),好瓜}.这里的结果信息,称为样本的"标记(label)";拥有了标记信息的样本,则称为"样例(example)".用表示第i个样例,yi是样本x的标识,一般把标记的集合称为标记空间(label space)或输出空间.
学习完模型后,就需要进行预测,预测的过程称为"测试"(testing),被预测的样本称为"测试样本"(testing sample).
测试数据:也是由输入X与输出Y组成,是用于测试训练好的模型对于新数据的预测能力.例如在中学阶段的函数可表示为y=f(x),这里的f指的是通过学习得到的模型,对于测试x,可得到其预测标记y=f(x).
首先,通过电商购买数据集了解机器学习数据集的构成:其中每一个用户都由age年龄 income收入 student是否为学生 credit_rating信用级别和buy_computer是否购买电脑组成.

如果通过机器识别用户是否购买电脑,需要将数据集中各字段进行数字化:

数据集的描述:

机器学习
监督学习(supervised learning)从训练数据(training data)集合中学习模型,对测试数据(test data)进行预测.
通俗易懂地讲:监督学习指的是人们给机器一大堆标记好的数据,比如一大堆照片,标记住那些是猫的照片,那些是狗的照片,然后让机器自己学习归纳出算法或模型,然后所使用该算法或模型判断出其他照片是否是猫或狗.代表的算法或模型有Linear regression Logistic regression 支持向量机(Support Vector Machine, SVM) Neural network等.

有监督学习 带有标签列的学习方式
根据labels标签列是否为连续值的预测
如果是连续值的预测====房价预测
   称之为"回归问题"----regression
regress,re表示back,gress等于go,数值go back to mean value,也就是I'll be back的意思
在数理统计中,回归是确定多种变量相互依赖的定量关系的方法
通俗理解 越来越接近期望值的过程,回归于事物的本质

如果是离散值的预测问题====西瓜的分类
   称之为"分类问题"----classification

分类的目标是预测离散的类别 分类是将数据映射到预先定义好的不同类别,判定其属于有限个类别(如上面提到的投资级别)
回归的目标是预测连续变量 如预测房价.

分类是监督学习的一个核心问题.在监督学习中,当输出变量Y取有限个离散值时,预测问题便成了分类问题.监督学习从数据中学习一个分类模型或分类决策函数,称为分类器(classifer),分类器对新的输入进行输出的预测(prediction),称为分类(classification).
分类的类别是多个时,称为多类分类问题.
分类问题包括学习和分类的两个过程.在学习过程中,根据已知的训练数据集利用有效的学习方法学习一个分类器;在分类的过程中,利用学习的分类器对新的输入实例进行分类.
如上述的垃圾邮件就是一个2分类问题,使用相应的机器学习算法判定邮件属于垃圾邮件还是非垃圾邮件.如下图给出了30个训练样本集实例:15个样本被标记为负类别(negative class)(图中圆圈表示);15个样本被标记为正类别(positive class)(图中用加号表示).由于我们的数据集是二维的,这意味着每个样本都有两个与其相关的值:,现在我们可以通过有监督学习算法获得一条规则,并将其表示为图中的一条黑色的虚线将两类样本分开,并且可以根据值将新样本划分到某个类别中(看位于直线的那一侧).

分类的任务就是将具有类别的 无序类标分配给各个新样本.
总结:
输出变量为有限个离散值的情况称为分类问题(classification)
如果类别为正类或负类的时候,这个是一个二分类问题
如果类别是一个多类别的时候,这就是一个多分类问题.
分类问题包括了学习和分类两个过程:
学习:根据已知的训练数据集利用有效的学习方法学习一个分类器.
分类:利用学习到的算法判定新输入的实例对其进行分类.

(2)利用回归预测连续输出值
另一类监督学习方法针对连续型输出变量进行预测,也就是所谓的回归分析(regression analysis).回归分析中,数据中会给出大量的自变量和相应的连续因变量(对应输出结果),通过尝试寻找自变量和因变量的关系,就能够预测输出变量.
如下图中,给定了一个自变量x和因变量y,拟合一条直线使得样例数据点与拟合直线之间的距离最短,最常采用的是平均平方距离来计算.如此,我们可以通过样本数据的训练来拟合直线的截距和斜率,从而对新的输入变量值所对应的输出变量进行预测.
比如生活中常见的房价问题,横轴代表房屋面积,纵轴代表房屋的售价,我们可以画出图示中的数据点,再根据使得各点到直线的距离的平均平方距离的最小,从而绘制出下图的拟合直线.根据生活常识随着房屋面积的增加,房价也会增长.
回归问题的分类有:根据输入变量的个数分为一元回归和多元回归;按照输入变量和输出变量之间的关系分为线性回归和非线性回归(模型的分类).


(3)标注问题 例如有一堆词语 标注什么是名词什么是动词
标注问题是分类问题的一种推荐,输入是一个观测序列,输出是一个标记序列或状态序列.标注问题的目标在于学习一个模型,使它能够对观测序列给出标记序列作为预测.
标注问题常用的方法有:隐马尔科夫模型 条件随机场.
自然语言处理中的词性标注就是一个标注问题:给定一个由单词组成的句子,对这个句子中的每一个单词进行词性标注,即对一个单词序列预测起对应的词性标注序列.

无监督学习 无标签学习

没有y
通俗地讲:非监督学习(unsupervised learning)指的是人们给机器一大堆没有分类标记的数据,让机器可以对数据分类 检测异常等.

无监督学习
 1-聚类:物以类聚 人以群分
 考虑:如果只是根据特征如何进行分类?
   能否根据样本的特征之间的相似度进行分类
     1-首先计算各个样本之间的相似度,比如使用欧氏距离(两点之间距离公式)
     2-将相似度的比较高的样本进行聚集在一个组或一个簇中,组内的相似度是极高的,组间的相异性极高的
     3-将样本数据划分为几个组或几个簇,组内的或簇内的相似度极高的

(1)通过聚类发现数据的子群
聚类是一种探索性数据分析技术,在没有任何相关先验信息的情况下(相当于不清楚数据的信息),它可以帮助我们将数据划分为有意义的小的组别(也叫簇cluster).其中每个簇内部成员之间有一定的相似度,簇之间有较大的不同.这也正是聚类作为无监督学习的原因.
下图中通过聚类方法根据数据的两个特征值之间的相似性将无类标的数据划分到三个不同的组中.
[例子]我们可以用下图表示西瓜的色泽和敲声两个特征,分别为,我们可以将训练集中的西瓜分成若干组,每一组称为一个"簇",这些自动形成的簇可能对应一些潜在的概念划分,如"浅色瓜" "深色瓜" "本地瓜"或"外地瓜".通过这样的学习我们可以了解到数据的内在规律,能为更深入地分析数据建立基础.
需要注意的是我们事先并不知道西瓜是本地瓜 浅色瓜,而且在学习过程中使用的训练样本通常不拥有标记(label)信息.


(2)数据压缩中的降维
数据降维(dimensionality reduction)是无监督学习的另一个子领域.通常,面对的数据都是高维的,这就对有限的数据存储空间以及机器学习算法性能提出了挑战.无监督降维是数据特征预处理时常用的技术,用于清除数据中的噪声,能够在最大程度保留相关信息的情况下将数据压缩到额维度较小的子空间,但是同时也可能会降低某些算法准确性方面的性能.
如下图一个三维空间的数据映射到二维空间的实例.

特征降维不是特征选择
原本特征降维后依然可见 
特征降维    通过算法降维 将高维度数据转化为低维度数据
降维的思录是PCA主成分分析法的降维方式
半监督学习
 一部分数据有标签,一部分数据没有标签

 缺点:引入了专家知识,需要规避因为专家带来的影响
 基于聚类的假设:
   首先数据集是一部分有标签一部分是没有标签,通过将有标签的数据结合没有标签的数据进行聚类.将相似度高的样本聚集在同一个组中,相异性较高的样本分在不同的组里面
   对于聚类之后的结果,在同一个组里面既有没有标记的样本也有具有标记的样本,就可以获取已经有标记的样本数据,通过样本的类别值少数服从多数的原则进行选举,比如有标记的红8黑2那就选红,将选举的类别值给没有标记的样本加上样本的标记,通过该方法就可以让没有标记的样本全部加上标记,从而实现转化为监督学习.

半监督学习的现实需求也非常强烈,因为在现实生活中往往能容易地收集到大量未"标记"的样本,而获取有标记的样本却需要耗费人力 物力.在互联网应用的最为明显,例如在进行网页推荐时需要请用户标记出感兴趣的网页,但是很少的用户愿意花很多时间来提供标记,因此,有标记的网页样本少,但互联网上存在无数网页可作为未标记样本使用.
半监督学习就是提供了一条利用"廉价"的未标记样本的途径.
通常在处理未标记的数据时,常常采用"主动学习"的方式,也就是首先利用已经标记的数据(也就是带有类标签)的数据训练出一个模型,再利用该模型去套用未标记的数据,通过询问领域专家分类结果与模型分类结果做对比,从而对模型做进一步改善和提高,这种方式可以大幅度降低标记成本,但是"主动学习"需要引入额外的专家知识,通过与外界的交互来将部分未标记样本转化有标记的样本.但是如果不与专家进行互动,没有额外的信息,还能利用未标记的样本提高模型的泛化性能吗?
答案是肯定的,因为未标记样本虽然未直接包含标记信息,但它们与有标记样本有一些共同点,我们可以利用无监督学习的聚类方法将数据特征相似的聚在一个簇里面,从而给未标记的数据带上标记.这也是在半监督学习中常用的"聚类假设",本质上就是"利用相似的样本拥有相似的输出"这个基本假设.
半监督学习进一步划分为了纯半监督学习和直推学习(transductive learning),前者假定训练数据中的未标记样本并不是待测数据,而直推学习假设学习过程中所考虑的未标记样本恰恰是待预测样本.无论是哪一种,我们学习的目的都是在这些未标记的样本上获得最优的泛化性能(泛化简单的指的是模型无论对训练集表现效果好,对测试集效果也很不错,在模型选择中我们会详细讲解).

一部分没有标签 一部分有标签 能否将由标签的数据进行逻辑删除标签列 利用聚类将所有的数据通过样本的相似性划分为不同的组或者簇 被划分在同一个组中的样本数据应该归为一类 将划分再痛一个组中的数据是既有有被逻辑删除标签列的样本也有没有标记的样本 对有标记的样本数据根据样本的标记少数服从多数原则选择出现次数较多的样本 给没有标记的数据加上标记 这样就都有了标记可以直接利用监督学习分类或回归算法进行分类或回归

强化学习 连续决策问题
   alphaGo下棋
   无人驾驶    深度学习->图像识别->红绿灯检测
强化学习->连续决策

[基础概念]强化学习(Reinforcement Learning)是机器学习的一个重要分支,主要用来解决连续决策的问题.比如围棋可以归纳为一个强化学习问题,我们需要学习在各种局势下如何走出最好的招法.还有我们要种西瓜的过程中需要多次种瓜,在种瓜过程中不断摸索,然后才能总结出好的种瓜策略,将例子中的过程抽象出来就是"强化学习".
强化学习不像无监督学习那样完全没有学习目标,又不像监督学习那样有非常明确的目标(即label),强化学习的目标一般是变化的 不明确的,甚至可能不存在绝对正确的标签.最近火热的无人驾驶技术是一个非常复杂 非常困难的强化学习任务,在深度学习出现之前,几乎不可能实现,无人驾驶汽车通过摄像头 雷达 激光测距仪 传感器等对环境进行观测,获取到丰富的环境信息,然后通过深度强化学习模型中的CNN RNN等对环境信息进行处理 抽象和转化,在结合强化学习算法框架预测出最应该执行的动作(是加速 减速 转向等),来实现自动驾驶.当然,无人驾驶汽车每次执行的动作,都会让它到目的地的路程更短,即每次行动都会有相应奖励.
深度强化学习最具有代表性的一个里程碑是AlphaGo,围棋是棋类游戏中最复杂的游戏,19*19的棋盘给它带来了3361种状态,这个数量级别已经超过了宇宙中原子数目的状态数.因此,计算机是无法通过像IBM深蓝那样暴力搜索来战胜人类,就必须给计算机抽象思维的能力,而AlphaGo做到了这一点.
如下图所示,强化学习目标是构建一个系统Agent,在于环境Environment交互过程中提高系统的性能.环境的当前状态信息中通常包含一个反馈(Reward)信号和行为State.Agent通过与环境Environment交互,Agent可以通过强化学习来得到一系列行为,通过探索性的试错或借助精心设计的激励系统使得正向反馈最大化.
Agent可以根据棋盘上的当前局势(环境)决定落子的位置,而游戏结束时胜负的判定可以作为激励信号.如下图:
根据正负反馈修正model(agent智能体) 
迁移学习
 
 解决模型的适应性问题
 迁移学习是为了解决模型适应性问题
 1-在具有相似或相关联业务的场景下,一个场景下数据量大,一个场景下数据量比较小,可以先使用数据量大的场景先进行建模,在将模型迁移到数据量小的业务场景中
 2-通用的用户使用手机习惯的模型迁移到个性化的数据上面. 
深度学习
人脸识别图像识别
解决特征提取的问题
     提取图像中的数据 提取语音信号的中的数据
强化迁移深度学习
   强化学习-----解决连续决策问题
   迁移学习-----解决模型适应性问题
   深度学习---解决特征提取问题
总结
除了上述学习方式,还有深度学习 迁移学习等学习方式,一般深度学提取特征 强化学习解决连续决策,迁移学习解决模型适应性问题.

下面对迁移学习能解决那些问题? 

小数据的问题.比方说新开一个网店,卖一种新的糕点,没有任何的数据,就无法建立模型对用 户进行推荐.但用户买一个东西会反映到用户可能还会买另外一个东西,所以如果知道用户在另 外一个领域,比方说卖饮料,已经有了很多很多的数据,利用这些数据建一个模型,结合用户买 饮料的习惯和买糕点的习惯的关联,就可以把饮料的推荐模型给成功地迁移到糕点的领域,这样, 在数据不多的情况下可以成功推荐一些用户可能喜欢的糕点

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号