规避电子政务门户网站建设的教训,批量管理多个wordpress,石柱土家族网站建设,教育培训网站官网目录
一、机器学习概念
二、机器学习步骤
三、有监督学习
1、k-近邻算法
核心思想
实例#xff1a;手写数字的识别
优缺点#xff1a;
2、决策树
相关概念
核心思想
一些小技巧
优缺点
3、神经网络
4、SVM——支持向量机
核心思想
SVM和SVR的区别
优缺点…目录
一、机器学习概念
二、机器学习步骤
三、有监督学习
1、k-近邻算法
核心思想
实例手写数字的识别
优缺点
2、决策树
相关概念
核心思想
一些小技巧
优缺点
3、神经网络
4、SVM——支持向量机
核心思想
SVM和SVR的区别
优缺点 5、集成学习或元算法
核心思想
常见的元算法或者集成学习——串行bagging随机森林等、并行boosting自适应boosting--adaboosting等
0串行训练与并行训练
1bagging自举汇聚法——基于数据随机重抽样的分类器构建
2boosting——基于错误提升分类器的性能Adaboosting算法
3随机森林——基于样本随机性和属性随机性 一、机器学习概念
机器学习就是将传感器等方式得到的海量的数据转化为有用的信息的过程。就是根据以往的经验和数据使得构建的模型最优以此来更加满足需求。
二、机器学习步骤
1、采集数据——拍照、传感器等 2、输入数据——如输入图像 3、分析数据——提取特征 4、训练算法——对于无监督学习来说不需要训练否则需要训练 5、测试算法——指标衡量算法的可靠性、泛化能力等 6、使用算法
三、有监督学习
1、k-近邻算法
核心思想 核心思想首先有一批样本数据集合我们称之为训练数据集并且我们知道他们的标签即每个样本和类别的对应关系是确定的。当一个不带标签的新样本输入时我们先提取这个样本的特征值然后计算这个样本和训练集中每一个样本对应特征值的距离距离从小到大取k个点然后分别统计这k个点的类别分别是什么将这k个点中出现最多的标签作为这个新样本的标签。 距离欧式距离——每个特征值的差的平方和再开根号 注虽然是有监督算法但是不需要进行训练因为是临时利用所有的训练样本的特征值这也造成了这个算法预测时间长。
实例手写数字的识别
https://blog.csdn.net/qq_41661809/article/details/89409724
1先获得公开数据集0--1手写黑白图像
2将32*32的黑白图像按行转换成1*1024的向量并且带有标签
3将新输入的黑白图像的向量和每一个图像的向量进行距离计算
4从小到大排列距离取前k个样本
5统计k个样本的不同类别个数
6将最多的类别数作为新样本的标签
优缺点
优点易于实现、理解
缺点效率不高每次预测都要进行大量的计算时间长
2、决策树
相关概念
熵度量数据集的混乱程度越大越乱 信息增益与熵相反越大数据越有序
核心思想 核心思想 训练阶段已知一个数据集数据集包含属性值和标签每一条数据样本包含若干个属性值和一个标签这作为训练数据集。决策树的决策就在于决定用哪一个属性去划分数据集这个时候就使用到了熵或者信息增益计算以每一个属性进行划分数据集后的各个子数据集的熵然后将划分后熵最小的那个属性作为当前结点的划分属性依据根据这个属性数据集会被划分成多个数据集然后对每一个子数据集根据熵来确定划分属性注意这里的属性要去掉父节点的属性。然后递归就得到了一颗树。 训练得到的是一颗结点是属性值的树叶子节点为标签值我们称之为决策树一般可以利用字典去存放这棵树父节点属性值作为key子树作为value。 预测阶段新输入一个样本我们根据样本的属性的值和决策树来决定样本的标签 一些小技巧
剪枝因为在构造决策树的时候我们是用的递归会遍历所有的情况耗时较长我们其实可以通过剪枝的方式来决定要不要继续递归若划分后的正确率下降了那我们则停止这个属性的递归换下一个属性进行尝试。
连续值处理若碰到是数值型的话那我们可以先对这些数值进行排序然后将两个数的均值作为一个划分属性。
优缺点
优点计算复杂度不高、结果易于理解、对中间的缺失不敏感
缺点可能产生过度匹配的问题
典型算法ID3、C45
3、神经网络
具体相关见专栏【机器学习】神经网络BP理论与python实例系列
神经网络会出现局部最优的情况为了解决这个问题有以下几种方法
1模拟退火在每一步都会以一定的概率去接受比最优解差的次优解有助于跳出“局部最优”但是随着时间推移这个概率应该减小
2选取多组参数初始值训练后选取误差最小的一组参数作为最终的参数。虽然都会陷入不同的局部极小但是这样可以尽可能地接近全局最优
3随机梯度下降法计算梯度的时候增加随机因素
4遗传算法
5预训练模型在深度学习中重新进行参数初始值的设置会非常麻烦因为量大而预训练模型则是一层一层进行训练每一层的输入是上一层的输出这一层的输出又是下一层的输入这样就得到了一个预训练的模型这时候我们在往后的模型中就可以拿这些参数值作为初始值。总结即先寻找每一组参数的局部最优然后用于后续的全局寻优因此一个好的初训练模型也能帮助避免“局部最优”。
4、SVM——支持向量机
核心思想 核心思想这个的核心思想其实就是找到一个平面将不同的两类分割开。这个平面的特点为 w^T*x b 0 参数需要满足最接近直线的几个点有w^T*x b (-)1 这几个点称之为支持向量 1怎么寻找支持向量 使得经过支持向量的两条线间隔最大dist 2/||w|| 超平面函数*标签始终大于等于1 因此进行损失函数的选择的时候一般取标签和超平面函数的乘积作为变量常用的分类损失函数有0-1损失函数、hinge损失函数、对数损失函数常用的是hinge函数h max(0,1-yf(x)) 具体损失函数可以参见【深度学习】——分类损失函数、回归损失函数、交叉熵损失函数、均方差损失函数、损失函数曲线 因为分类问题只有-1,1两种类型因此使用真实标签乘以超平面函数预测标签的乘积作为损失函数的变量。预测真确则大于1否则小于1而不是去计算误差多少。
SVM和SVR的区别
参考谈谈SVM和SVR的区别 优缺点
优点泛化错误率低、计算开销不大
缺点对参数调节和核函数调节很敏感若SVM不修改的话仅适合二分类问题 5、集成学习或元算法
核心思想 核心思想集成学习ensemble method和元算法meta-algorithm就是将不同的分类器进行组合成一个新的分类器。 组合形式 1针对同一个数据集训练多个不同分类器SVM、K-NN等然后结合起来 2针对不同的数据集训练不同数据集训练同一种分类器然后结合起来 3不同数据集不同分类器 即先训练多个弱分类器然后再结合在一起得到一个强分类器 常见的元算法或者集成学习——串行bagging随机森林等、并行boosting自适应boosting--adaboosting等
参考机器学习算法 之 集成学习串行-Boosting族(AdaBoost)并行-Bagging、随机森林
0串行训练与并行训练
并行训练每个数据集独立分开训练互不影响
串行训练下一个训练器的训练受上一个训练结果的影响
1bagging自举汇聚法——基于数据随机重抽样的分类器构建
核心思想不同数据集重抽样重组而得、同一种分类器即在原始数据集中重抽样得到多个数据集每个数据集训练得到一个分类器最后根据分类器结果的投票结果进行决策
①假设原始数据集大小为n从原始数据集中有放回的抽取一个样本
②抽取n个样本组成了一个新的和原始数据集一样大的数据集因为是有放回抽样因此元素可以是重复的
③重复步骤①②S次这样就得到了S个和原始数据大小一样的新数据集
④对这S个数据集进行独立训练得到S个分类器——并行训练
⑤预测阶段输入新样本得到S个预测结果然后根据投票的方式将票数最高的分类结果作为最终分类标签——这里也看出对于每一个分类器的结果的权重都是一样的都为1
常见的bagging算法有随机森林(RF)
2boosting——基于错误提升分类器的性能Adaboosting算法
核心思想同一数据集每个样本带权重、同一种分类器即集中关注上一个分类器训练错误的样本进行下一个分类器的训练
这里以Adaboosting算法为例
①对训练样本集的每一个样本赋予相等的权重
②先训练一个分类器记录训练后预测错误的样本
③根据分类器的错误率对每一个分类器也有一个权重alpha基于错误率计算得到的 ④调整样本权重分类正确的样本权重降低错误的增加权重主要是用于后续预测和损失函数使用让分类器更关注这些样本 ⑤再对调整后的数据集进行训练得到下一个分类器——串行训练
⑥重复③-⑤直到分类器的错误率为0或者分类器达到指定个数时停止迭代
⑦迭代后的如下图所示预测阶段是将样本输入后得到的预测结果会进行alpha加权后再相加得到最终结果 3随机森林——基于样本随机性和属性随机性
核心思路其实就是基于决策树进行的随机改进这里是随机选择一个含有k个属性的自己然后从这个子集中找到一个最优划分属性用于划分。这样就会得到多个决策树进行投票即可 四、无监督学习
1、聚类
参考https://zhuanlan.zhihu.com/p/104355127
核心思想 聚类就是物以类聚首先得到的是一个没有标记的样本集我们希望将其划分成不同的类簇即不同的子集。首先我们随机选择K个样本作为每个类簇的中心然后计算每个样本和所有中心的距离将距离最近的类簇中心作为这个样本的类簇然后更新类簇中心直到不改变为止 基本步骤——这里以K均值聚类为例K-Mean
1随机选取K个样本作为初始均值向量簇中心
2计算样本i和k个簇质心的距离得到距离向量distij;
3将样本i归类到min(distij)的簇j中
4待所有样本划分结束后更新均值向量
5求划分后每一个簇的样本的均值几何中心作为新的均值向量
6重复2-5
7直到均值向量不再改变或者经过多少次迭代后停止即可
8给每一个类簇定义上类标签这样就聚类完成了
分类 K-均值聚类、密度聚类DBSCAN算法、层次聚类、高斯混合聚类等
目标
簇内距离最小簇间距离最大