自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(120)
  • 资源 (30)
  • 收藏
  • 关注

原创 LightGBM算法原理及Python实现

LightGBM 由微软公司开发,是基于梯度提升框架的高效机器学习算法,属于集成学习中提升树家族的一员。它以决策树为基学习器,通过迭代地训练一系列决策树,不断纠正前一棵树的预测误差,逐步提升模型的预测精度,最终将这些决策树的结果进行整合,输出最终的预测结果。

2025-05-06 23:45:31 355

原创 CatBoost算法原理及Python实现

CatBoost 是在传统GBDT基础上改进和优化的一种算法,由俄罗斯 Yandex 公司开发,于2017 年开源,在处理类别型特征和防止过拟合方面有独特优势。在实际数据中,存在大量的类别型特征,如性别、颜色、类别等,传统的算法通常需要在预处理中对这些特征进行独热编码(One-Hot Encoding)或标签编码(Label Encoding)。但这些方法存在一些问题,独热编码会增加数据的维度,导致模型训练时间变长;标签编码可能会引入不必要的顺序关系,影响模型的准确性。CatBoost 采用了一种独特的处

2025-05-05 17:41:55 898

原创 XGBoost算法原理及Python实现

XGBoost 在构建决策树时,利用了二阶导数信息。在损失函数的优化过程中,不仅考虑了一阶导数(梯度),还引入了二阶导数(海森矩阵),这使得算法能够更精确地找到损失函数的最优解,加速模型的收敛速度,同时提高模型的泛化能力。此外,XGBoost 还加入了正则化项,包括 L1 和 L2 正则化,用于控制模型的复杂度,防止过拟合。

2025-05-04 16:18:23 1013

原创 AdaBoost算法的原理及Python实现

AdaBoost(Adaptive Boosting,自适应提升)是一种迭代式的集成学习算法,通过不断调整样本权重,提升弱学习器性能,最终集成为一个强学习器。它继承了 Boosting 的基本思想和关键机制,但在具体的实现中有着显著特点,成为具有一定特定性能和适用场景的集成学习算法。

2025-04-30 19:11:24 850

原创 GBDT算法原理及Python实现

GBDT(Gradient Boosting Decision Tree,梯度提升决策树)是集成学习中提升(Boosting)方法的典型代表。它以决策树(通常是 CART 树,即分类回归树)作为弱学习器,通过迭代的方式,不断拟合残差(回归任务)或负梯度(分类任务),逐步构建一系列决策树,最终将这些树的预测结果进行累加,得到最终的预测值。

2025-04-29 20:55:44 710

原创 Bagging、Boosting、Stacking的原理

Bagging、Boosting、Stacking是常见集成学习的形式,它们都是通过对多个学习器进行有机组合,达到比单个学习器性能更好的目标。

2025-04-27 14:23:12 1073

原创 感知机模型

感知机模型(Perceptron Model)也叫做神经元模型,设计灵感即来自于生物神经元的运行机制,依次完成信息接收、处理、输出的过程。当前大放异彩的各种人工神经网络模型即由一个个人工神经元构成,因此,本文介绍的感知机模型(神经元模型)就是各种神经网络模型的基本单元。

2024-09-06 11:53:49 1239

原创 逻辑回归模型

逻辑回归模型(Logistic Regression,LR),由名称上来看,似乎是一个专门用于解决回归问题的模型,事实上,该模型更多地用于解决分类问题,尤其是二分类问题。这并不矛盾,因为逻辑回归直接输出的是一个连续值,我们将其按值的大小进行切分,不足一定范围的作为一个类别,超过一定范围的作为一个类别,这样就实现了对分类问题的解决。概况来说就是,先对数据以线性回归进行拟合,输出值以Sigmoid函数进行映射,映射到0和1之间,最后将S曲线切分上下两个区间作为类别区分的依据。

2024-09-05 22:28:45 1082

原创 分类模型的算法性能评价

分类模型是机器学习中一种最常见的问题模型,在许多问题场景中有着广泛的运用,是模式识别问题中一种主要的实现手段。分类问题概况起来就是,对一堆高度抽象了的样本,由经验标定了每个样本所属的实际类别,由特定算法训练得到一个分类器,输入样本属性即自动计算出其所属类别,从而完成特定的识别任务。在特定问题中,算法性能的评价是一个重要的方面,它一般由学习器在测试数据中的性能表现来直接衡定,常见的评价指标有准确率、精准度(查准率)、召回率(查全率)、F1值、ROC-AUC值、Kappa系数等。

2024-07-09 15:31:58 1155

原创 AttributeError: module ‘backend_interagg‘ has no attribute ‘FigureCanvas‘. Did you mean: ‘FigureCanv

matplotlib切换图形界面显示终端为TkAgg。多是由环境的兼容性导致。

2024-07-08 17:22:21 254

原创 聚类模型的算法性能评价

作为机器学习领域的重要内容之一,聚类模型在许多方面能够发挥举足轻重的作用。所谓聚类,就是通过一定的技术方法将一堆数据样本依照其特性划分为不同的簇类,使得同一个簇内的样本有着更相近的属性。依不同的实现策略,聚类算法有很多种,如基于距离的k-means、基于密度的DBSCAN等。在聚类完成之后,其性能的评估是一个不可规避的问题,常见的评估方法依有无事先的标记性信息分为外部评估法和内部评估法。

2024-06-27 17:45:24 1438 1

原创 回归模型的算法性能评价

在一般形式的回归问题中,会得到系列的预测值,它们与真实值(ground truth)的比较表征了模型的预测能力,为有效量化这种能力,常见的性能评价指标有可解释方差(EVS)、平均绝对误差(MAE)、均方误差(MSE)、均方根误差(RMSE)、决定系数(R2)等。值得一提的是,回归问题分单输出情形和多输出情形,在多输出情形下,可以对各维度结果进行平均计算或以不同的权重进行计算。

2024-06-05 16:47:53 1120

原创 Python缺失值处理实现

在数据处理相关工作中,读取的数据中常常会有缺失值的情况,为顺利进行后续的操作,需要首先对缺失值进行处理,处理的方式一般为**删除**或**填充**,Python中提供了专门的工具包,可以方便地进行实现。读取操作可以由pandas模块实现,通常直接读一个excel或csv文件,创建为DataFrame对象,模块中的dropna方法和fillna方法可以实现对缺失值的删除和填充。

2023-11-28 23:32:41 1992

原创 三种常见的平滑滤波方法

均值滤波、中值滤波、高斯滤波是三种常见的平滑滤波方法,其中均值滤波和高斯滤波是线性技术,中值滤波是非线性技术。它们实现的基本原理是基本一致的,指定一个滑动窗口,计算其中的均值、中值、卷积值输出到当前位置。均值滤波、高斯滤波对高斯噪声表现较好,但对椒盐噪声表现较差;中值滤波则对椒盐噪声表现较好,对高斯噪声表现较差。

2023-08-10 00:44:51 9432 1

原创 DBSCAN聚类

DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,簇集的划定完全由样本的聚集程度决定。聚集程度不足以构成簇落的那些样本视为噪声点,因此DBSCAN聚类的方式也可以用于异常点的检测。

2023-08-05 18:36:49 530

原创 常见距离计算的Python实现

常见的距离有曼哈顿距离、欧式距离、切比雪夫距离、闵可夫斯基距离、汉明距离、余弦距离等,用Python实现计算的方式有多种,可以直接构造公式计算,也可以利用内置线性代数函数计算,还可以利用scipy库计算。

2023-08-02 23:20:15 3813

原创 Python实现字符串模糊匹配

在一个字符串中,有时需对其中某些内容进行模糊匹配以实现条件的判定,如在“你好,hello,world”中判断是否含有“llo”。Python中通过re.search()方法实现,特别地,对于首位起始的内容匹配,也可通过re.match()方法实现。若匹配成功,它们返回一个re.Match对象;若匹配失败,返回None。

2023-04-15 19:55:28 3828

原创 k-means聚类

当前人工智能技术实现的一种主要手段是机器学习,而机器学习能够解决的问题主要有三种:分类、聚类、回归,有监督的是分类,无监督的是聚类。所谓聚类,就是以一定的方法将一堆样本依它们本身的数据特性划分成不同的簇类,以达成不同的技术目的,k-means就是这样一种基础聚类算法。

2023-01-30 18:39:27 1190

原创 朴素贝叶斯分类

朴素贝叶斯法(Naive Bayes)是一种基础分类算法,它的核心是贝叶斯定理+条件独立性假设。

2023-01-27 22:00:47 1538

原创 kNN分类

kNN(k nearest neighbor,k近邻)是一种基础分类算法,基于“物以类聚”的思想,将一个样本的类别归于它的邻近样本。

2023-01-07 18:24:00 1251

原创 基于准则匹配的图像对准

在图像处理相关的问题中,图像对准是一类典型的问题,也就是要将两幅图严丝合缝地对应起来。通常来讲,两幅图大小不一,一个是模板,一个是母图,也就是要在母图中搜寻定位到与模板图最为接近的区域。

2023-01-02 11:22:30 1180 2

原创 Matlab打印运行进度

在运行matlab程序的过程中,有时候需要实时地掌握程序运行的进度,尤其对于一些耗时较长的循环操作,能够及时地输出运行进度,显得非常有必要。

2022-07-15 21:53:24 1846

原创 MATLAB更改初始工作路径

matlab每次启动时,会默认进入指定的工作路径,这个初始路径是可以自行设定的,方式如下。方式一:主页 -> 预设 -> MATLAB -> 常规,指定初始工作文件夹。方式二:MATLAB启动时会自动地执行toolbox\local\matlabrc.m这个文件,因此只需要s1.打开该文件 edit matlabrc.m;s2.在该文件的最后一行加入一条语句:cd ‘(想进入的路径)’,保存。...

2022-03-20 14:40:20 3458

原创 Java中将jsonArray导出为Excel

    java中使用jxl导出excel时,需指定WritableSheet对象中对应于每个单元格的数据。List类型是一种常用的数据类型,它里面的元素是实体对象,当将它创建为WritableSheet对象时,它的每个实体元素可以通过简单索引循环的形式遍历到,但对实体每个属性的遍历,却不能以简单索引循环的形式实现,而只能用getter方法去逐一获取,这样,对不同的实体,均需特定的实现代码与之对应,势必会造成大量的代码冗余。    一种有效的策略是,将List转化为jsonArray,把实体对象的属性名构

2021-11-27 13:18:04 1502

转载 flask中在js中如何解析render_template传递给html的数据

现象说明: 在flask中通常在使用render_template渲染一个.html页面文件时,可以传入一下参数,在html源码中通过{{变量名}}的方式来调用数据,但是假如在html文件中的JavaScript中想要调用该数据变量,直接调用可能出现识别为Undefined类型的情况。问题分析: 出现上述情况是因为:经常会有字符 空格 ' "" 等被转义成其他字符,这其实是特殊字符进行转义,防止js注入 在js中可以利用tojson解决。比如:数组 num = [“ni”

2021-11-23 14:03:28 1901

原创 python多线程的简单使用

from threading import Timerimport timedef run1(): print(1) print(2) print(3)def run2(): print("A") print("B") print("C")if __name__ == "__main__": t1 = Timer(1, run1) #新建一个Time线程,设定启动1秒后执行函数run1 t2 = Timer(0, run2) #.

2021-11-23 13:43:53 438

原创 java中double变量保留小数位数

public class Test { public static void main(String[] args) { double a = 12.123456789; String a_str = String.format("%.3f", a); //以字符串形式保留位数,此处保留3位小数 double a_1 = Double.parseDouble(a_str); //将字符串转回double类型 }}

2021-11-22 14:23:49 3676

原创 使用pmml跨平台部署机器学习模型Demo——房价预测

  基于房价数据,在python中训练得到一个线性回归的模型,在JavaWeb中加载模型完成房价预测的功能。一、 训练、保存模型工具:PyCharm-2017、Python-39、sklearn2pmml-0.76.1。1.训练数据house_price.csvNosquare_feetprice11506450220074503250845043009450535011450640015450760018450

2021-11-21 12:08:14 1672 1

原创 使用pmml实现跨平台部署机器学习模型

一、概述  对于由Python训练的机器学习模型,通常有pickle和pmml两种部署方式,pickle方式用于在python环境中的部署,pmml方式用于跨平台(如Java环境)的部署,本文叙述的是pmml的跨平台部署方式。  PMML(Predictive Model Markup Language,预测模型标记语言)是一种基于XML描述来存储机器学习模型的标准语言。如,对在Python环境中由sklearn训练得到的模型,通过sklearn2pmml模块可将它完整地保存为一个pmml格式的文件,再

2021-11-20 19:02:12 4765 4

原创 解决PMML namespace URI httpwww.dmg.orgPMML-4_4 is not supported

使用pmml的方式跨平台部署机器学习模型时,在java中加载模型,出现了该错误原因:java的jar包版本与PMML文件的版本不相符,jar包的版本过低无法解析PMML文件。如果升级jar包,加载模型的当前语法不可用;因此,降低PMML文件的版本号是安全可靠的。解决:将pmml文件中xmlns="…/PMML-4_4"改为xmlns="…/PMML-4_3"再运行,成功。参考https://blog.csdn.net/qq_32113189/article/details/107542

2021-11-18 21:06:20 1887

原创 html5柱状图示例

<!DOCTYPE html><html lang="en"><canvas id="canvas1" width="1000" height="300"></canvas><script> (function () { window.addEventListener("load", func1(),func2(), false); })(); function func1() {

2021-11-04 11:34:51 803

原创 python中使用time.pref_counter()精确计时

time.pref_counter()返回一个CPU级别的精确时间值,以秒为单位。它通常用于测量某段程序的运行时间,因此取两次调用pref_counter()的差值才有意义。import timetime_start = time.perf_counter()for i in range(100000): a = 0time_end = time.perf_counter()time_consumed = time_end - time_startprint("耗费的时间: {}

2021-11-02 22:20:06 4941 3

原创 python中datetime的常用操作

datetime是用于处理日期和时间的模块,一些常用的操作可通过提供的基本函数实现。引入模块——import datetime。1.datetime转字符串——strftime()函数有两种写法:datetime.datetime.strftime(datatime对象,格式化的字符串)或datatime对象.strftime(格式化的字符串)注:若格式化的字符串中含中文,需使用format方式表示。myTime = datetime.datetime.now() # 获取系统当前时间s

2021-11-02 22:16:13 1407

原创 隐马尔可夫模型的解码

1.问题描述  隐马尔可夫模型(HMM)的解码问题指,给定模型和输出序列,如何找出最有可能产生这个输出的状态序列。自然语言处理中,也即如何通过观测信号确定最有可能对应的实际语义。在状态序列上,每个状态位是状态集合中的元素之一,因此该问题等价于在状态集合中的节点构成的有向网络(篱笆网络)中找出一条概率最大的路径(最优路径),如图。该问题可以通过维特比算法得到高效的解决。2.算法叙述  假设 P(st,j)P(s_{t,j})P(st,j​)表示从起始时刻到st,js_{t,j}st,j​的最优路径的

2021-11-02 21:42:58 1278

原创 维特比算法

一、概述  维特比算法是安德鲁.维特比(Andrew Viterbi)于1967年为解决通信领域中的解码问题而提出的,它同样广泛用于解决自然语言处理中的解码问题,隐马尔可夫模型的解码是其中典型的代表。无论是通信中的解码问题还是自然语言处理中的解码问题,本质上都是要在一个篱笆网络中寻找得到一条最优路径。  所谓篱笆网络,指的是单向无环图,呈层级连接,各层节点数可以不同。如图是一个篱笆网络,连线上的数字是节点间概念上的距离(如间距、代价、概率等),现要找到一条从起始点到终点的最优路径。  在实际问题中,

2021-10-28 21:41:56 2317 2

原创 Python中使用collections.Counter统计序列中元素的频率

from collections import Counterimport numpy as npls = [1, 1, 1, 2, 2, 2, 3.3, 3.3, "aa", "aa", "bb"]r = Counter(ls)# 或 r = Counter(np.array(ls))print(type(r), len(r))print(r)print("\n转化为字典:")d = dict(r)print(type(d), len(d))print(d)...

2021-10-27 15:56:38 455

原创 隐马尔可夫模型

  隐马尔可夫模型(Hidden Markov Model, HMM)是关于时序的概率模型,在自然语言处理如语音识别、机器翻译等领域有着广泛的应用。模型的核心是马尔科夫链+独立输出假设。1 模型描述  给定状态集合{q1,q2,...,qN}\left\{ q_1,q_2,...,q_N \right\}{q1​,q2​,...,qN​}和观测集合{v1,v2,...,vM}\left\{ v_1,v_2,...,v_M \right\}{v1​,v2​,...,vM​},已知一个状态能够随机地生成一个

2021-10-16 12:15:40 474

原创 JavaWeb中实现文件上传和下载

一、文件上传1.使用的组件  使用DiskFileItemFactory、ServletFileUpload、FileItem三个组件实现。依赖的jar包为commons-fileupload-1.4.jar、commons-io-2.7.jar,下载地址:https://download.csdn.net/download/Albert201605/26346276——调用方法的说明DiskFileItemFactory——解析器工厂,用于创建对请求内容的解析器(1) public void

2021-10-14 20:55:48 606

原创 java中实现创建目录、创建文件的操作

一、创建目录mkdir()——仅创建一层目录,返回true或false.mkdirs()——创建一层或多层目录,返回true或false.  也就是,在通常情况下,使用mkdirs()即可满足创建目录的需求。如,File file = new File("D:\\myLevel1\\myLevel2"); //以某路径实例化一个File对象if (!file.exists()){ //如果不存在 boolean dr = file.mkdirs(); //创建目录} 即在D盘根目录

2021-09-29 17:51:28 33166

原创 java遍历List常用的两种方式

如对一个String类型的列表List<String> stringList = new ArrayList<>();stringList.add("张三");stringList.add("李四");stringList.add("王五");遍历方式一:for循环,以索引获取元素for (int i = 0; i < stringList.size(); i++) { String str = stringList.get(i); System.

2021-09-29 13:51:26 9391

机器学习LightGBM算法原理详解与Python实现

内容概要:LightGBM是由微软开发的高效机器学习算法,基于梯度提升框架,属于集成学习中的提升树家族。它通过迭代训练一系列决策树来逐步提升模型预测精度。训练过程包括初始化模型、计算梯度和Hessian矩阵、构建决策树、更新模型以及重复迭代。为了加速决策树的构建,LightGBM引入了直方图算法、单边梯度采样(GOSS)和互斥特征捆绑(EFB)。这些技术使得LightGBM具有训练速度快、内存占用少、可扩展性强、准确率高和支持多种数据类型和任务的优势。最后,文章展示了如何使用Python实现LightGBM分类和回归模型的训练和评估。; 适合人群:对机器学习有一定了解,特别是对梯度提升方法感兴趣的开发者和数据科学家。; 使用场景及目标:①理解LightGBM的核心原理和技术细节;②掌握LightGBM在Python中的具体实现方法,包括分类和回归任务的应用;③优化模型训练速度和内存使用,提高模型准确率。; 其他说明:阅读时应重点关注LightGBM相较于传统梯度提升算法的改进之处,如直方图算法、GOSS和EFB的应用。同时,结合提供的Python代码示例进行实践操作,有助于更好地理解和应用该算法。

2025-05-06

机器学习CatBoost算法原理及其Python实现

内容概要:CatBoost是一种基于传统GBDT改进的算法,由俄罗斯Yandex公司开发并于2017年开源。它在处理类别型特征和防止过拟合方面具有显著优势。CatBoost采用“有序目标统计”方法处理类别型特征,避免了独热编码和标签编码带来的问题。此外,CatBoost使用对称树结构,通过评估特征重要性和选择最优分裂阈值来构建稳定的决策树,减少过拟合风险并提高训练速度。训练过程中,CatBoost通过计算残差或负梯度构建新的决策树,并不断更新模型直至收敛。CatBoost适用于结构化数据预测(如金融领域的信用评估、电商的商品推荐)、时间序列分析(如股票价格预测)以及图像和文本数据的辅助分析。Python实现方面,展示了分类和回归任务的具体代码示例。; 适合人群:有一定机器学习基础,对GBDT有一定了解,希望深入理解CatBoost算法原理和应用的研发人员。; 使用场景及目标:①处理含有大量类别型特征的数据集,避免传统编码方式的弊端;②通过构建对称树结构减少过拟合,提高模型稳定性;③应用于金融、电商、时间序列预测等领域,解决实际业务问题。; 阅读建议:此资源详细介绍了CatBoost算法的原理和Python实现,不仅涵盖理论知识,还提供了具体的代码示例。建议读者在学习过程中结合理论与实践,尝试调整参数并观察模型表现,以加深对算法的理解。

2025-05-05

机器学习XGBoost算法原理详解及Python实现

内容概要:本文介绍了XGBoost算法的原理及其Python实现。XGBoost是一种基于梯度提升框架的机器学习算法,通过迭代地训练一系列决策树来构建模型。它利用二阶导数信息优化损失函数,并加入正则化项防止过拟合,从而提高模型的泛化能力和收敛速度。文章详细解释了XGBoost的算法过程,包括初始化模型、计算残差或负梯度、拟合决策树、更新模型等步骤。此外,还对比了XGBoost与GBDT的区别,如目标函数、决策树生成策略、并行计算能力和对缺失值的处理等方面。最后,给出了XGBoost在Python中的分类和回归实现示例。 适合人群:具备一定机器学习基础,对提升模型性能有需求的数据科学家、算法工程师和研究人员。 使用场景及目标:①希望通过梯度提升方法改进现有模型的预测效果;②需要处理大规模数据集并追求高效的并行计算能力;③解决数据集中存在缺失值的问题,提高模型的鲁棒性。 阅读建议:读者应结合实际应用场景,理解XGBoost相对于传统GBDT的优势,尤其是其优化策略和实现细节。在实践中,可根据具体任务调整参数设置,如学习率、树的最大深度等,以获得最佳模型性能。

2025-05-04

机器学习AdaBoost算法原理与Python实现:集成学习中提升弱学习器性能的技术详解及应用实例

内容概要:AdaBoost(自适应提升)是一种迭代式的集成学习算法,通过不断调整样本权重,将多个弱学习器组合成一个强学习器。算法流程包括初始化样本权重、训练弱学习器、计算弱学习器权重、更新样本权重分布、重复训练直至满足停止条件,最后构建集成模型。AdaBoost的优势在于能有效提高预测准确性,适应不同数据分布,但对噪声敏感且计算成本较高。其广泛应用于图像识别、语音识别、目标检测等领域。文章还提供了Python环境下基于scikit-learn库的AdaBoost分类和回归实现示例,包括数据准备、模型训练、预测和评估等步骤。; 适合人群:对机器学习有一定了解,特别是对集成学习感兴趣的初学者和中级开发者。; 使用场景及目标:①理解AdaBoost算法的工作原理及其在提升弱学习器性能方面的机制;②掌握如何使用Python和scikit-learn库实现AdaBoost分类和回归任务。; 其他说明:AdaBoost算法虽然强大,但在处理含有大量噪声或异常值的数据时需谨慎,建议结合实际情况选择是否使用以及如何优化参数。此外,由于每次迭代都要重新计算权重和训练弱分类器,对于大数据集可能需要考虑计算效率的问题。

2025-04-30

机器学习GBDT算法原理详解及Python实现:涵盖梯度下降与决策树构建全过程

内容概要:GBDT(梯度提升决策树)是集成学习中Boosting方法的典型代表,主要以决策树作为弱学习器,通过迭代拟合残差(回归任务)或负梯度(分类任务),逐步构建一系列决策树,最终累加各树的预测结果得到最终预测值。GBDT融合了梯度下降思想,每次迭代都沿着损失函数的负梯度方向优化模型,通过不断拟合误差来提升模型性能。文章还介绍了GBDT的构建过程,包括初始化模型、计算残差或负梯度、拟合决策树、更新模型等步骤,并指出该算法的优点如处理复杂数据能力强,但也存在训练耗时、对异常值敏感等缺点。最后,文章提供了Python环境下GBDT的分类和回归实现示例,分别使用了sklearn库中的GradientBoostingClassifier和GradientBoostingRegressor,演示了从数据准备、模型训练到评估的完整流程。; 适合人群:有一定机器学习基础,对集成学习方法感兴趣的从业者和研究人员。; 使用场景及目标:①理解GBDT算法的工作原理及其在解决分类和回归问题上的应用;②掌握GBDT算法的Python实现,能够独立完成相关项目的开发与调优。; 其他说明:GBDT算法虽然强大,但在实际应用中需要注意调整超参数(如学习率、树的数量等)以获得更好的效果。此外,由于其对异常值敏感,因此在数据预处理阶段应采取适当的措施减少异常值的影响。

2025-04-29

机器学习集成学习中Bagging、Boosting、Stacking算法原理及应用:提升模型性能的关键技术解析

内容概要:本文详细介绍了三种常见的集成学习方法:Bagging、Boosting 和 Stacking。Bagging 通过有放回的抽样方式生成多个训练集,分别训练多个基学习器,再通过投票或平均的方式融合结果,以降低模型的方差并提高稳定性。Boosting 通过逐层提升的方式,每次迭代中根据前一轮的错误率调整样本权重,使得后续学习器更关注之前分类错误的样本,从而逐步提升模型性能。Stacking 则是通过多层学习的方式,先用不同算法训练多个基学习器,再将这些基学习器的预测结果作为新特征,训练一个高层次的元学习器,以实现更复杂的特征捕捉和更高的预测精度。 适合人群:对机器学习有一定了解,希望深入理解集成学习方法的原理和应用场景的研究人员、工程师以及相关领域的学生。 使用场景及目标:① 在需要提高模型稳定性和泛化能力时使用 Bagging,尤其适用于高方差模型如决策树;② 当希望通过迭代优化逐步提升模型性能时使用 Boosting,适合处理不平衡数据集或需要更强预测能力的任务;③ 在希望充分利用不同算法优势,捕捉更复杂数据关系时使用 Stacking,适用于复杂特征提取和高精度预测任务。 阅读建议:本文提供了三种集成学习方法的具体实现步骤和应用场景,建议读者结合实际案例进行理解,并尝试在实践中应用这些方法,通过实验对比不同集成方法的效果,加深对其原理的理解。

2025-04-26

感知机模型(Perceptron Model)

感知机模型(Perceptron Model)的原理详细描述及Python实现,包括手工实现方式和基于PyTorch的实现方式。

2024-09-05

逻辑回归模型(Logistic Regression,LR)

逻辑回归模型(Logistic Regression,LR)的原理详细阐述及Python实现代码。

2024-09-05

Python3.13安装

Python3.13安装

2024-08-13

Python3.12.1-3.12.5

Python3.12.1-3.12.5

2024-08-13

Python3.12.0

Python3.12.0

2024-08-13

Python3.11.1-3.11.9

Python3.11.1-3.11.9

2024-08-13

Python3.11.0

Python3.11.0

2024-08-13

Python3.10.5-3.10.11

Python3.10.5-3.10.11

2024-08-13

Python3.10.0-3.10.4

Python3.10.0-3.10.4

2024-08-13

Python3.9.5-3.9.13

Python3.9.5-3.9.13

2024-08-13

Python3.9.0-3.9.4

Python3.9.0-3.9.4

2024-08-13

Python3.8.4-3.8.10

Python3.8.4-3.8.10

2024-08-13

Python3.8.0-3.8.3

Python3.8.0-3.8.3

2024-08-13

python3.7.4-3.7.9

python3.7.4-3.7.9

2024-08-13

Python3.7.0-3.7.3

Python3.7.0-3.7.3

2024-08-13

Python3.60-3.63

Python3.60-3.63

2024-08-13

Python3.6.4-3.6.8

Python3.6.4-3.6.8

2024-08-13

Python3.5安装包

Python3.5安装包

2024-08-13

Python3.4安装包

Python3.4安装包

2024-08-13

Python3.0-3.3安装包合集

Python3.0-3.3安装包合集

2024-08-13

windows平台下Python 2.7安装包

windows平台下Python 2.7安装包

2024-08-13

windows平台下Python 2.0-2.6 安装包合集

windows平台下Python 2.0-2.6 安装包合集

2024-08-13

分类模型的算法性能评价原理阐述、代码实现

分类模型的算法性能评价详细描述,包括原理阐述、代码实现等。

2024-07-08

聚类模型的算法性能评价

对聚类模型算法性能评价的详细描述,包括纯度、兰德指数、调整兰德指数、F值、杰卡德系数、标准化互信息等外部评估法,以及紧密度、间隔度、轮廓系数、戴维森堡丁指数、邓恩指数等内部评估法。

2024-06-27

回归模型的算法性能评价.pdf

回归模型的算法性能评价.pdf

2024-06-05

三种常见的平滑滤波方法.pdf

均值滤波、中值滤波、高斯滤波三种常见的平滑滤波方法理论知识详细讲解、示例演算。

2023-08-09

DBSCAN聚类算法原理详细讲解、演算示例、Python实现

DBSCAN聚类算法原理详细讲解、演算示例、Python实现。

2023-08-02

kmeans聚类算法原理和python实现

kmeans聚类算法原理和python实现

2023-01-30

朴素贝叶斯分类算法原理和python实现

朴素贝叶斯分类算法原理和python实现

2023-01-27

kNN算法原理与python实现 博客地址:https://blog.csdn.net/Albert201605?type=bl

kNN算法原理与python实现 博客地址:https://blog.csdn.net/Albert201605?type=bl

2023-01-07

基于准则匹配的图像对准,包括代码和数据

基于准则匹配的图像对准,包括代码和数据

2023-01-04

SAD+MAD+SSD+MSD+NCC算法matlab实现代码

SAD+MAD+SSD+MSD+NCC等图像对准算法的matlab实现代码,包含测试数据。 博客:https://blog.csdn.net/Albert201605?spm=1010.2135.3001.5343

2022-12-31

使用pmml跨平台部署机器学习模型Demo——房价预测.rar

使用pmml跨平台部署机器学习模型Demo——房价预测

2021-11-20

PmmlExample.rar

使用Pmml在java中部署由python训练的机器学习模型的示例。

2021-11-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除