机器学习
文章平均质量分 86
Yolanda Yan 9
Practice makes perfect.
展开
-
集成算法--AdaBoost算法【含python代码】
1. 基于数据集多重抽样的分类器将不同的分类器组合起来,称为集成算法(ensemble method) 或者 元算法(meta-algorithm)。使用集成算法会有多种形式:可以是不同算法的集成,也可以是同一算法在不同设置下的集成,还可以是数据集不同部分分配给不同分类器之后的集成。常用的是基于同一种分类器多个不同实例的两种计算方法。bagging: 基于数据随机重抽样的分类器构建方法自举汇聚法(bootstrap aggregating),也称bagging方法,是在从原始数据集中选择S次后得到S个原创 2020-09-30 07:02:14 · 2692 阅读 · 1 评论 -
回归---OLS、LWLR、缩减方法、岭回归、lasso、前向逐步回归【含python代码】
回归的目的就是预测数值型的目标值。最直接的办法就是写出一个目标值的计算公式,即所谓的回归方程,需要求方程中的回归系数。一旦有回归系数,就可以进行预测了,具体做法是用回归系数乘以输入值,再将结果全部加起来,就得到预测值了。下面首先介绍找出最佳拟合直线的两种方法普通最小二乘法(OLS)和局部加权线性回归(LWLR),然后介绍缩减方法,如岭回归、lasso、前向逐步回归。普通最小二乘法(OLS,Ordinary Least Squares)核心思想:对于给定的数据集上,找出最佳拟合直线,使得真实值与预测值之原创 2020-09-29 20:20:35 · 1644 阅读 · 0 评论 -
【最全的】分类算法的性能度量指标
机器学习分类算法的评价指标有:混淆矩阵(Confuse Matrix)、准确率(Accuracy)、错误率(ErrorRate)、精准率(Precision)和召回率(Recall)、F1 Score、ROC曲线(Receiver Operating Characteristic Curve)、AUC(Area Under the Curve)、KS曲线、Lift值、P-R曲线 。接下来对以上这些指标进行一一解释,并给出多分类问题的综合评价指标,如宏平均、微平均、Kappa系数,最后用一个多分类实例来计算原创 2020-09-23 22:02:13 · 2923 阅读 · 0 评论 -
有监督学习-----支持向量机(含python实现代码)
支持向量机(support vector machines, SVM)是一种二分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器;SVM的的学习策略就是间隔最大化,SVM的的学习算法就是求解凸二次规划的最优化算法。SVM的实现中,最流行的一种实现是序列最小优化(Sequential Minimal Optimization, SMO)。SVM可以使用核函数(kernel)的方式,可以对非线性可分的数据进行分类。原理希望找到离分隔超平面最近的点,确保它们离分隔面的距离尽可能远。这里点到分隔面原创 2020-09-09 21:09:09 · 1394 阅读 · 0 评论 -
监督学习--逻辑回归
逻辑回归(Logistic Regression,LR)是分类常用的算法。逻辑回归在西瓜书中又被称为对数几率回归。进行分类的主要思想是:根据现有数据对分类边界线建立回归公式,以此进行分类。训练分类器时的做法就是寻找最佳拟合参数,使用的是最优化算法。适合数据类型:数值型优点:计算代价不高,易于理解和实现缺点:容易欠拟合,分类精度可能不高原理正负类区分正负类没有明确区分,但是按经验来说负类(0):一般表示没有什么,比如没有癌症,非垃圾邮件正类(1):一般表示具有我们要寻找的东西,比如 有癌症,原创 2020-08-04 22:23:05 · 906 阅读 · 0 评论 -
朴素贝叶斯的应用----文档分类、垃圾邮件过滤
1. 基于朴素贝叶斯的文档分类 以在线社区的留言板为例。为了不影响社区的发展,需要屏蔽侮辱性的言论,所以要构件一个快速过滤器,如果某条留言使用了负面或者侮辱性的语言,那么久将该留言标识为内容不当。过滤这类内容是一个很常见的需求。对此问题建立两个类别:侮辱类和非侮辱类,使用1和0分别表示。 把文本看成单词向量或者词条向量,也就是说将句子转换为向量。考虑出现在所有文档中的所有单词,需要构件词汇表,然后必须要将每一篇文档转换为词汇表上的向量。 这里的留言文本数据,已经被切分好,存放在列表中,并且原创 2020-07-27 22:08:32 · 811 阅读 · 0 评论 -
朴素贝叶斯原理【详细介绍,一文看懂】
贝叶斯分类算法是统计学是一种概率分类方法,朴素贝叶斯分类时贝叶斯分类中最简单的一种。利用贝叶斯公式根据某特征的先验概率计算出其后延概率,然后选择具有最大后延概率的类作为该特征所属的类。朴素贝叶斯,称之为“朴素”,是因为整个形式化过程只做了最原始、最简单的假设,具体假设如下:特征之间相互独立每个特征同等重要1. 概率相关先验概率: 比如向女生表白成功的概率是20%,记为P(A)=20%条件概率:在事件B发生的情况下,事件A发生的概率,用P(A|B)表示,具体计算公式如下。如帅的前提下,向女生表白原创 2020-07-27 22:04:07 · 4222 阅读 · 0 评论 -
决策树算法--CART分类树算法
ID3和C4.5算法,生成的决策树是多叉树,只能处理分类不能处理回归。而CART(classification and regression tree)分类回归树算法,既可用于分类也可用于回归。 分类树的输出是样本的类别, 回归树的输出是一个实数。CART算法步骤特征选择;递归建立决策树;决策树剪枝;CART分类树算法ID3中使用了信息增益选择特征,增益大优先选择。C4.5中,采用信息增益率选择特征,减少因特征值多导致信息增益大的问题。CART分类树算法使用基尼系数选择特征,基尼系数代表了原创 2020-05-10 22:15:15 · 3202 阅读 · 0 评论 -
决策树算法--CART回归树算法
分类树与回归树的区别在样本的输出,如果样本输出是离散值,这是分类树;样本输出是连续值,这是回归树。分类树的输出是样本的类别,回归树的输出是一个实数。分类模型:采用基尼系数的大小度量特征各个划分点的优劣。回归模型:采用误差平方和度量。建立CART回归树步骤输入:训练数据集D输出:回归树T计算各个特征各个值划分的两部分 D1和D2D_1和D_2D1和D2 的误差平方和,选择误差平方和最小的(如下式)作为最优特征和最优切分点minA,a[minc1∑xiϵD1(A,a)(yi−c1)2+原创 2020-05-10 21:54:05 · 1134 阅读 · 0 评论 -
决策树算法--C4.5算法
C4.5算法是用于生成决策树的一种经典算法,是ID3算法的一种延伸和优化。C4.5算法对ID3算法进行了改进 ,改进点主要有:用信息增益率来选择划分特征,克服了用信息增益选择的不足,但信息增益率对可取值数目较少的属性有所偏好;能够处理离散型和连续型的属性类型,即将连续型的属性进行离散化处理;能够处理具有缺失属性值的训练数据;在构造树的过程中进行剪枝;特征选择特征选择也即选择最优划分属性,从当前数据的特征中选择一个特征作为当前节点的划分标准。 随着划分过程不断进行,希望决策树的分支节点所包含的原创 2020-05-10 21:28:40 · 5498 阅读 · 1 评论 -
决策树算法--ID3算法
决策树算法–ID3算法决策树(Decision Tree)是一类常见的机器学习方法,是一种非常常用的分类方法,它是一种监督学习。常见的决策树算法有ID3,C4.5、C5.0和CART(classification and regression tree),CART的分类效果一般要优于其他决策树。决策树是基于树状结构来进行决策的,一般地,一棵决策树包含一个根节点、若干个内部节点和若干个叶节点。...原创 2020-04-20 22:03:59 · 3604 阅读 · 0 评论 -
kNN算法
k近邻(k-Nearest Neighbor,kNN)算法是机器学习算法中最基础、最简单的算法之一。它既能用于分类,也能用于回归。kNN通过计算不同特征值之间的距离来进行分类或回归。 具体的距离计算公式点这里kNN分类算法基本思想输入没有标签的数据后,将这个没有标签的数据的每个特征与训练集中的数据对应的特征进行比较,然后提取特征最相近的数据(最近邻)的分类标签。一般而言,只选择样本数据集中...原创 2020-03-30 19:52:25 · 960 阅读 · 0 评论 -
FP-growth算法
FP-growth算法FP-growth算法将数据集存储在一种称作FP树的紧凑数据结构中,然后发现频繁项集或者频繁项对,即常在一块出现的元素项的集合FP树。FP代表频繁模式(Frequent Pattern)。FP树通过链接(link)来连接相似元素,被连起来的元素项可以看成一个链表。本文代码主要来源于《机器学习实战》书,为了适配python3.6,部分代码做了修改。FP树的一个例子如下...原创 2020-03-26 19:51:31 · 576 阅读 · 1 评论 -
关联分析--Apriori算法
关联分析–Apriori算法关联分析是一种在大规模数据集中寻找有趣关系的任务。这些关系有两种形式:频繁项集或关联规则。频繁项集是指经常出现在一起的物品集合。关联规则暗示两个物品之间可能存在很强的关系。 如 “{尿布} —> {啤酒}”这条关联规则,意味着如果有人买了尿布,就很可能也会买啤酒使用频繁项集和关联规则,使商家可以更好的理解他们的顾客。大部分关联规则分析来自于零售...原创 2020-03-23 16:36:48 · 851 阅读 · 0 评论 -
特征值分解和奇异值分解
特征值分解特征值分解是将一个方阵A分解为如下形式:A=QΣQ−1A=Q\Sigma Q^{-1}A=QΣQ−1其中,Q是方阵A的特征向量组成的矩阵,Σ\SigmaΣ是一个对角矩阵,对角线元素是特征值。通过特征值分解得到的前N个特征向量,表示矩阵A最主要的N个变化方向。利用这前N个变化方向,就可以近似这个矩阵(变换) 。奇异值分解奇异值分解(Singular Value Decomp...原创 2020-03-19 22:12:27 · 1329 阅读 · 0 评论 -
数据降维--主成分分析PCA
主成分分析法(PCA,principal components analysis)试图找到一个低维平面对数据进行投影,最小化投影误差的平方,即最小化数据与投影后的对应点之间的距离的平方值在进行PCA之前需要对数据进行均值化和特征缩放PCA不是线性回归线性回归是使真实值y与预测值y之间的误差最小(垂直距离最小)PCA是使点到低维平面上的投影的距离平方最小(投影距离平方最小)...原创 2020-03-15 19:53:18 · 944 阅读 · 0 评论 -
聚类算法之——K-Means||、Canopy、Mini Batch K-Means
K-Means||算法K-Means||算法是为了解决K-Means++算法缺点而产生的一种算法;主要思路是改变每次遍历时候的取样规则,并非按照K-Means++算法每次遍历只获取一个样本,而是每次获取K个样本,重复该取样操作O(logn)次**(n是样本的个数)**,然后再将这些抽样出来的样本聚类出K个点,最后使用这K个点作为K-Means算法的初始聚簇中心点。实践证明:一般5次重复采用就可...原创 2020-03-12 22:20:29 · 831 阅读 · 0 评论 -
聚类算法之——K-Means++聚类算法
聚类算法之——K-Means++聚类算法轮盘法基本思想:各个个体被选中的概率与其适应度大小成正比;步骤计算出群体中 每个个体的适应度f(i=1,2,…,m),mf(i=1,2,\dots,m),mf(i=1,2,…,m),m为群体大小;计算出每个个体被遗传到下一代群体中的概率P(xi)=f(xi)∑j=1Mf(xj)P(x_i)=\frac{f(x_i)}{\sum_{j=1...原创 2020-03-10 22:49:17 · 6699 阅读 · 1 评论 -
聚类算法之——二分K-Means算法
聚类算法之——二分K-Means算法为克服K-Means算法收敛于局部最小值问题,提出了二分K-Means算法二分K-Means算法首先将所有点作为一个簇,然后将该簇一分为二。之后选择其中一个簇继续进行划分,选择哪一个簇进行划分取决于对其划分是否可以最大程度降低SSE的值。上述基于SSE的划分过程不断重复,直到得到用户指定的簇数目为止。步骤将所有点看成一个簇;对每个簇,进行如下操...原创 2020-03-08 10:06:17 · 3950 阅读 · 1 评论 -
聚类算法之——K-Means算法
聚类算法之——K-Means算法聚类算法属于无监督学习,它将相似的对象归到同一个簇中。K-Means算法是聚类算法中最常用到算法;1. 预备知识点距离计算闵可夫斯基距离点x=(x1,x2,…,xn)和y=(y1,y2,…,yn)x=(x_1,x_2,\dots,x_n)和y=(y_1,y_2,\dots,y_n)x=(x1,x2,…,xn)和y=(y1,y2,…,yn)之间的...原创 2020-03-05 21:51:08 · 1149 阅读 · 0 评论 -
XGBoost多分类预测
XGBoost多分类预测1. 数据预处理对缺失值进行填充根据业务增加衍生变量,比如占比、分级化、TOP打横等等根据业务删除相应的指标对离散型的指标进行one-hot序列编码2. 模型选择可以进行多分类预测的模型有逻辑回归、决策树、神经网络、随机森林、xgboost,发现效果排名靠前的依次是XGBoost、随机森林、决策树3. 模型调用通过调用python相关包,对XGBo...原创 2020-02-18 21:08:26 · 4959 阅读 · 1 评论
分享