机器学习实战笔记1

第一章  机器学习基

机器学习就是把无序的东西转换成有用的信息。

1.机器学习的术语:专家系统、特征(属性)、实例、训练集(特征、目标变量)、测试数据、知识表示

目标变量是机器学习算法的预测结果:分类算法中目标变量的类型一般为标称型;在回归算法中,目标变量的类型一般为连续型。

2.机器学习的主要任务:

监督学习:分类、回归(预测数据)

无监督学习:聚类,密度估计

3.NumPy函数库基础

第二章   K-近邻算法

1.k-近邻算法概述

采用测量不同特征值之间的距离方法进行分类。

工作原理:存在一个数据集合,也称作训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对应关系。输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本集中特征最相似数据的分类标签。一般来说,只选择样本数据集中前K个最相似的数据,通常k不大于20.最后选择k个最相似数据中出现次数最多的分类,作为新数据的分类。

kNN算法:

1)      计算已知类别数据集中的点与当前点之间的距离

2)      按照距离递增次序排序

3)      选取与当前点距离最小的K个点

4)      确定前K个点所在类别的出现频率

5)      返回前K个点出现频率最高的类别作为当前点的预测分类

第一个分类器的实现:

from numpyimport *

import operator

 

defcreateDataSet():

         group=array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])

         labels=['A','A','B','B']

         return group, labels

 

defclassify0(inX,dataSet,labels,k)://inX是用于分类的输入向量;dataSet是输入的训练样本集;labels是标签向量;k是选择的最近邻数目

         dataSetSize=dataSet.shape[0]//看行数

         diffMat=tile(inX,(dataSetSize,1)) -dataSet//tile函数重复inX的行dataSetSize次,行1次

         sqDiffMat = diffMat**2

         sqDistances=sqDiffMat.sum(axis=1)

         distances=sqDistances**0.5

         sortedDistIndicies =distances.argsort()

         classCount={}

         for i in range(k):

                   voteIlabel=labels[sortedDistIndicies[i]]

                   classCount[voteIlabel]=classCount.get(voteIlabel,0)+1

         sortedClassCount=sorted(classCount.iteritems(),key=operator.itemgetter(1),reverse=True)

         return sortedClassCount[0][0]

 

第三章   决策树

算法概述: 将原始数据集根据决定性特征划分为几个数据子集,这些数据子集会分布在第一个决策点的所有分支上,如果某个分支下的数据属于同一类型,则表示到达终止模块,可以得到结论,无需进一步对数据集进行分割;如果子集内的数据不属于同一类型,则需重复划分数据子集,直到所有具有相同类型的数据均在一个数据子集内。但是应该怎样划分数据呢,显然是根据决定性特征,这里引进一个度量标准--信息增益(划分数据集之前之后信息发生的变化),我们可以计算每个特征值划分划分数据集获得的信息增益,获得信息增益最高的特征就是最好的选择。

第四章   基于概率论的分类方法:朴素贝叶斯

贝叶斯决策理论:

,那么属于类型1

,那么属于类型2

朴素贝叶斯分类器是用于文档分类的常用算法,假设:各个特征之间独立,每个特征同等重要

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值