机器学习
文章平均质量分 91
Unknown To Known
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
12.机器学习——聚类(Clustering)
需要说明的是,用于评估的最佳数据簇数可能与程序输出的簇数是不同的。我们可以观察聚类误差是否随聚类类别数 量的增加而单调变化,如果数据是基本随机的,即不存在非随机簇结构,那么聚 类误差随聚类类别数量增加而变化的幅度应该较不显著,并且也找不到一个合适 的K对应数据的真实簇数。二分k-means算法:首先将整个数据集看成一个簇,然后进行一次k-means(k=2)算法将该簇一分为二,并计算每个簇的误差平方和,选择平方和最大的簇迭代上述过程再次一分为二,直至簇数达到用户指定的k为止,此时可以达到的全局最优。原创 2025-08-22 17:15:10 · 1033 阅读 · 0 评论 -
10.机器学习——马尔科夫(Markov)
显然难以直接判断,需要参考闭嘴之前的照片,如果之前的照片显示小明在吃饭,那这个闭嘴的照片很可能是小明在咀嚼食物准备下咽,可以给它打上吃饭的标签;如同马尔可夫随机场,条件随机场为具有无向的图模型],图中的顶点代表随机变量,顶点间的连线代表随机变量间的相依关系,在条件随机场中,随机变量Y 的分布为条件机率,给定的观察值则为随机变量 X。跟前向算法相反,我们知道总的概率肯定是1,那么B_t=1,也就是最后一个时刻的概率合为1,先计算前三天的各种可能的概率,在计算前两天、前一天的数据,跟前向算法相反的计算路径。原创 2025-08-13 14:31:30 · 1014 阅读 · 0 评论 -
9.机器学习——贝叶斯网络(Bayesian Network)
概率图模型是结合概率论与图论的知识,用图结构表示变量间概率依赖关系的理论。它分为贝叶斯网络(有向图)和马尔可夫网络(无向图)两大类,广泛应用于机器学习领域。贝叶斯网络通过有向无环图描述变量间的因果关系,其核心思想源于贝叶斯学派,认为参数是随机变量,强调先验分布与后验分布的结合。频率派则视参数为固定值,侧重样本分布研究。贝叶斯网络包含head-to-head、tail-to-tail和head-to-tail三种基本结构,能够表达复杂的条件独立关系。因子图则是对概率函数进行分解得到的双向图,包含变量节点和函数原创 2025-08-12 17:17:40 · 1133 阅读 · 0 评论 -
8.机器学习——支持向量机(SVM)
支持向量机(SVM)是一种经典的监督学习算法,主要用于二分类问题。其核心思想是找到一个最优的超平面,使得两类数据点之间的间隔最大化。SVM通过优化几何间隔来确定分类超平面,确保分类的置信度最高。对于线性不可分的情况,SVM通过核映射将数据映射到高维空间,使其在高维空间中线性可分。SVM的优化问题可以转化为凸二次规划问题,并通过拉格朗日乘子法求解。常用的损失函数是Hinge Loss,用于最大化分类间隔。SVM在处理高维数据和复杂分类问题时表现出色,广泛应用于机器学习和数据挖掘领域。原创 2025-05-09 17:56:21 · 1063 阅读 · 0 评论 -
7.机器学习——LightGBM
首先,最明显就是内存消耗的降低,直方图算法不仅不需要额外存储预排序的结果,而且可以只保存特征离散化后的值,而这个值一般用8位整型存储就足够了,内存消耗可以降低为原来的1/8。但实际上Level-wise是一种低效的算法,因为它不加区分的对待同一层的叶子,带来了很多没必要的开销,因为实际上很多叶子的分裂增益较低,没必要进行搜索和分裂。在遍历数据的时候,根据离散化后的值作为索引在直方图中累积统计量,当遍历一次数据后,直方图累积了需要的统计量,然后根据直方图的离散值,遍历寻找最优的分割点。原创 2025-05-06 17:16:58 · 790 阅读 · 0 评论 -
6.机器学习——XGBoost
XGBoost是陈天奇等人开发的一个开源机器学习项目,高效地实现了GBDT算法并进行了算法和工程上的许多改进,被广泛应用在Kaggle竞赛及其他许多机器学习竞赛中并取得了不错的成绩。说到XGBoost,不得不提GBDT(Gradient Boosting Decision Tree)。因为XGBoost本质上还是一个GBDT,但是力争把速度和效率发挥到极致,所以叫X (Extreme) GBoosted。包括前面说过,两者都是boosting方法。关于GBDT,这里不再提,可以查看我前一篇的介绍,原创 2025-04-30 18:56:39 · 1377 阅读 · 0 评论 -
5.机器学习——梯度提升决策树(GBDT)
然后拿它们的残差-1、1、-1、1代替A B C D的原值,到第二棵树去学习,第二棵树只有两个值1和-1,直接分成两个节点,即A和C分在左边,B和D分在右边,经过计算(比如A,实际值-1 - 预测值-1 = 残差0,比如C,实际值-1 - 预测值-1 = 0),此时所有人的残差都是0。可以发现,两者都是在每 一轮迭代中,利用损失函数相对于模型的负梯度方向的信息来对当前模型进行更 新,只不过在梯度下降中,模型是以参数化形式表示,从而模型的更新等价于参 数的更新。,即“当前预测模型的值”,也就是对它求负梯度。原创 2025-04-29 17:12:06 · 820 阅读 · 0 评论 -
4.随机森林(Random Forest)
Bagging是bootstrap aggregating。思想就是从总体样本当中随机取一部分样本进行训练,通过多次这样的结果,进行投票获取平均值作为结果输出,这就极大可能的避免了不好的样本数据,从而提高准确度。因为有些是不好的样本,相当于噪声,模型学入噪声后会使准确度不高。举个例子假设有1000个样本,如果按照以前的思维,是直接把这1000个样本拿来训练,但现在不一样,先抽取800个样本来进行训练,假如噪声点是这800个样本以外的样本点,就很有效的避开了。重复以上操作,提高模型输出的平均值。OOB。原创 2025-04-26 11:05:33 · 695 阅读 · 0 评论 -
3.决策树(Desition Tree)
其实用一下图片能更好的理解LR模型和决策树模型算法的根本区别,我们可以思考一下一个决策问题:是否去相亲,一个女孩的母亲要给这个女海介绍对象。大家都看得很明白了吧!LR模型是一股脑儿的把所有特征塞入学习,而决策树更像是编程语言中的if-else一样,去做条件判断,这就是根本性的区别。原创 2025-04-24 18:40:33 · 1037 阅读 · 0 评论 -
2.逻辑回归(Logistics Regression)
逻辑回归是用来做分类算法的,大家都熟悉线性回归,一般形式是Y=aX+b,y的取值范围是[-∞, +∞],有这么多取值,怎么进行分类呢?不用担心,伟大的数学家已经为我们找到了一个方法。也就是把Y的结果带入一个非线性变换的Sigmoid函数中,即可得到[0,1]之间取值范围的数S,S可以把它看成是一个概率值,如果我们设置概率阈值为0.5,那么S大于0.5可以看成是正样本,小于0.5看成是负样本,就可以进行分类了。原创 2025-04-21 11:01:14 · 1229 阅读 · 0 评论 -
2.逻辑回归(Liner Regression)----- 代码实现
信用评分算法对违约概率进行猜测,是银行用来确定是否应该发放贷款的方法。这项比赛要求参赛者通过预测某人在未来两年内遭遇财务困境的概率,提高信用评分的最新水平。银行在市场经济中发挥着至关重要的作用。他们决定谁可以获得资金,以什么条件获得资金,可以做出或破坏投资决策。为了使市场和社会发挥作用,个人和公司都需要获得信贷。原创 2025-04-21 11:00:12 · 357 阅读 · 0 评论 -
1.线性回归(Liner Regression)
线性:两个变量之间的关系是一次函数关系的——图象是直线,叫做线性。非线性:两个变量之间的关系不是一次函数关系的——图象不是直线,叫做非线性。回归:人们在测量事物的时候因为客观条件所限,求得的都是测量值,而不是事物真实的值,为了能够得到真实值,无限次的进行测量,最后通过这些测量数据计算回归到真实值,这就是回归的由来。原创 2025-04-14 20:22:39 · 1269 阅读 · 0 评论 -
1.线性回归(Liner Regression)----- 代码实现
这篇介绍的是我在做房价预测模型时的python代码,房价预测在机器学习入门中已经是个经典的题目了,但我发现目前网上还没有能够很好地做一个demo出来,使得入门者不能很快的找到“入口”在哪,所以在此介绍我是如何做的预测房价模型的题目,仅供参考。,能够看到第二列是销售价格,而我们要预测的就是销售价格,所以在训练过程中是不需要销售价格的,把第二列删除掉,新建一个csv文件存放销售价格这一列,作为后面的结果对比。y表示我们要求的销售价格,x表示特征值。下载的是两个数据文件,一个是真实数据,一个是测试数据,打开。原创 2025-04-14 19:54:39 · 975 阅读 · 0 评论
分享